View Single Post
Old 8th March 2003, 16:46   #31
Jacob Metro
Junior Member
Jacob Metro's Avatar
Join Date: Nov 2002
Location: Alabama, United States of America
Posts: 31
Send a message via AIM to Jacob Metro Send a message via Yahoo to Jacob Metro
Smile More interpretation

I've had more time to look at the logs

What I think this may be showing is that ZLIB uses the available physical memory and then automatically begins using available virtual memory. That is proven when you note that the ZLIB CSVs show available physical memory dropping to zero, hanging in the zero range for several minutes, while the processor interrupts and memory swapping takes care of memory's job. Which is why ZLIB compression works.

However, I note that the processor interrupts begin immediatly before the memory reaches 32MB (I can't prove that 32 is the point, but I think I can prove that the swapping begins before we run out of memory) anyway during BZ2 compression, I don't note any appreciable change in processor interrupts or swap file usage prior to running out of physical memory.

Now, with that said, I'm pretty sure that an application this "simple" (no disrespect intended) does not diffrentiate between physical memory and virtual memory. It would take a savy programmer to force the program to look only at certain ranges of memory. I haven't yet begun to look through the source myself (I want to duplicate and understand the problem first) so I can't state definitively (sp?) that "A genius programmer has added code to NSIS's available compression routines to cause only physical memory to be addressed." Realizing that I am a novice programmer, the person responsible for the addition of BZ2 should not take offense to my wording "genius" above for indubitably it requires more skill to differentiate (in code) between virtual and physical memory than to simply use virtual memory.

Therefore if BZ2 is loosly based on the Wheeler block sorting process, it might be that process itself which is responsible using only available physical memory.

Jacob Metro
Jacob Metro is offline   Reply With Quote