| |
| |
| |
|
Page: 1 2 3 4 5 6 7 8 9 10
Comments:
<0> PDF's rule <1> Hi Guys.. Just wondering if there is a maximum amount of memory that a single process can use in Redhat ES ? I'm planning on giving my OS 8GB of memory and want to set a single Java process to use 6GB of that.. Would this be possible? I keep bumping into articles talkinga bout 4GB limits... etc? <2> are you using a 64 bit processor? <1> 32bit <1> I read an article that said RHEL3/4 32bit can support up to 16GB of RAM using the smp kernel trhough...? <2> then you will have a 2 gig memory limit per process <2> joobie: if you want to use that much memory get a 64 bit processor that way it can have a 64 bit address space <1> Trey, I'm trying to temp fix a problem, so i'm stuck with this 32bit hardware <1> perm fix is moving to 6y4bit <3> How can u see what program is listening on what port? <3> like an lsof for tcp/ip ports <1> Trey, im able to allocate 2.5 GB at the moment for a single java process <2> joobie: you're sol with a 32 bit procesor <1> E-bola, netstat <1> sol? <2> out of luck
<3> netstat just shows what ports are listening <3> not what program? <2> E-bola: the -p option when run as root shows that <2> E-bola: there's also lsof -i <3> how cool <3> never knew about -p <3> thanks <1> Trey, what about things like PAE <2> joobie: there are a few ways around it but its quite slow <1> Trey, speed is not an issue <1> at the moment a process im trying to execute wont execute <2> joobie: still it won't help you <1> because of insufficient heap size in java <2> joobie: each process gets 32 bits to address its memory <1> if i can increase it at a speed compromise it'll be ok <1> even with PAE? <2> yes even with PAE <1> Trey, correct me if im wrong.. <2> pae lets the kernel itself address more than 2^32 of memory <1> my understanding of PAE is that it allows the kernel to support more than 4GB, so it can allocate memroy to say 3 processes all requesting 4GB of memory... but each individual process is still limited to 4GB? <1> ahh <1> yes, that's what i was dreading <2> joobie: yeah <2> joobie: like i said _buy a 64 bit machine_ <1> Trey, I don't mean to insult your intelligence, though how confident are you about that explaination? <1> I just want to cross it off my list of things to confirm if you are very confident <2> joobie: fairly certain but don't trust me go google it <1> Trey, it's on the cards.. infact developers testing on it at athe moment <1> but i need this fix in place for the current env <1> ok thanks TRey <1> I appreacite your help:) <2> joobie: live with a 32 bit address space <1> Trey, that's what i keep telling the developers ;) <2> joobie: or make your program multiple threads <1> and that too <2> s/threads/processes/ <1> ;) hehe <2> oops <1> well the java app they have is single threaded <1> and without major development time, it's going to stay like that :/ <2> joobie: so go spend $1000 on a opteron <1> then I have to reinstall 64bit <2> yes. yes you would <1> and compile up a tonn of JARs to support it <1> etc etc.. pain in the butt <1> and not so much an immediate fix anymore if i went down that path <2> joobie: the way memory addressing in linux works is that the process tries to address a portion of memory that generates a page fault which is an exception that the processor generages when a memory page doesn't exist <1> I just need this current java process to complete at the moment.. long term i've already kicked off all these 64bit upgrades and planted the seed to have the java app redesigned <2> joobie: the kernel catches this exception, then properly maps the request to either real memory or swap <2> joobie: the problem is that the memory space is addressed by a single 32 bit integer <2> joobie: this is a limitation of the 32 bit architecture itself <1> Trey <1> you should write a blog and wack that on there <2> joobie: the kernel can switch out multiple address spaces and thus address more than 2^32 of ram, but a process can only use its 32 bit int sized address space <1> i've read a few docs about all of this, your explaination is by far the simpliest to understand <1> I see <2> now do you trust me? <2> :-) <1> indeed:) <1> how does PAE fit into this though Trey? <1> is it another virtual 32bit address space it can map to, like swap?
<2> joobie: it lets the kernel itself switch out between multiple banks of 32bit memory spaces <2> joobie: which means you can have more than 2^32 of system ram but a process can still only access 2^32 <1> I see <1> hmm Trey, just to clarify <1> If i install 3GB of phsycail RAM and set a swap of 2GB.. forgetting about all the memory the OS itself needs, does this mean a single 32bit process can only use 3GB of physical and 1GB of swap? ie. having 4GB of physical RAM and a 10GB swap, the kernel will never be able to use swap for a 'single' process on 32bit? <1> given that there's only 1 process running <1> very idealistic sorry, but helps with the example <2> sort of you're over complicating it with the swap vs real memory distinction <2> joobie: given: a process has a single 32 bit integer that it uses to address the memory for itself <4> unlikely it'd need the swap.... <2> joobie: the process uses instructions on the processor to read and write memory. <3> Real interesting discussion guys :) <2> joobie: the way the kernel hooks in to the memory access to provide things like swap space, or access to different portions of a large amount of ram, is by registering a page fault exception handler with the processor so that when a memory page that a process requests doesn't exist the kernel can go fetch it and put it in the place the process is looking for it <1> I see.. so I guess the swap is a whole other can of worms, only coming into the picture when there's not enough physical <2> joobie: but you _STILL_ only have 32 bits to address memory in the process and you have no special hooks for handling page faults like you do in the kernel space <2> joobie: therefore you can never have more than 32bits of memory per process on a 32 bit processor. <2> joobie: Got it? <1> Thanks Trey, I do <1> Thanks a lot Trey, appreciate your time explaining.. it's clear as crystal ;) <2> joobie: the swap has nothing to do with it. Its just an example of a way in which the kernel can map memory for the processes virtual memory space <2> joobie: awesome <1> yea, I hear ya <2> joobie: opteron's can be had cheap now adays <1> yea we have a few floating around the org <1> pity they have not made it to production as yet :/ <1> ahh well.. we are going 64bit, in time. <2> so what is this java app that needs that much memory <5> Trey - you are right, unless you add segmentation to the mix, which Linux does not do (Thank God, or Linus, or whoever). But there are ways. <1> Trey, a poorly written app *cha-ching-boom* <1> ;P <1> it does an import / export job on our web based system.. it's just really poorly written <2> Mjolnir: yeah but i prefaced all my stuff with "in linux.." <2> :-) <2> Mjolnir: the NUMA code is pretty nifty though <1> the dev guys need it to run and rewriting the code to fix the memory handling will take longer than they need this process to run in <2> joobie: yeah i certainly understand "good enough" <2> joobie: in that case moving to a 64bit box should be a cheap no brainer solution. <2> joobie: what distribution of linux are you using. <5> I wonder the discussion would be like if someone proposed using segments as a way to get a >4gb process space in the kernel groups.... I'm not going to try that myself. <1> Trey, RHEL <2> Mjolnir: its still slow <1> the problem is we use a lot of jpackage packages and they dont provide 64bit compiles of their code <2> joobie: oh yeah you said that. RH has 64 bit support don't they? I know they do in fedora <1> so i'd need to compile up all those on 64bit <2> yeah <1> and to top it off, we don't have a proper testing process in place <2> luckily sun has finally released a 64 bit native version of java <1> which means we'd be pushing this box into production ASAP without indepth testing <2> although they leave out the 64 bit browser java plugin. bastards <1> Trey, they do have 64bit support <1> lol <1> Trey i've stayed back an hour or so, my partner is going to shoot me if I come home any later <2> hehe enjoy <2> !wtf thanks? <6> Just send money...... <1> Thanks for all your help, ill have to come here more often - you've given #linuxhelp a higher standard IMHO <2> see above <2> ;-) <1> ehhe <1> well i'll idle more often <1> and offer my support <1> to pay back the debt ;) <1> Cheers Trey <2> ? <4> .drug <2> :-/ <2> .sleep <4> sleep is for the caffeine deprived...... <7> hi, ive got an app at work that uses exceed on demand to connect to a remote X server to start an X session. how do i do the same within the linux environment <5> Are you running a window manager? <7> yeah, ive got freenx on top of kde <5> Set the display to :0 instead of a remote server and run it in kde
Return to
#linuxhelp or Go to some related
logs:
anadys sucks
ego_uk Datamaxx SUCKS
#windows #gentoo #beginner #politics what is srpms fedora #stocks #computers
|
|