Any system with a cache will have this behavior. The exact point at which this occurs will depend on cache line size, and the size of the cache. The write strategy will effect the speed penalty for the write case. Write back will be faster in the type of program you are testing, but write through is safer. I bet the mainframe uses write through.
I tried your program on Cygwin, but it just dumps core. I couldn't get gdb to do anything useful, so I gave up. -----Original Message----- From: Jim Sibley [mailto:[EMAIL PROTECTED] Sent: Monday, August 11, 2003 1:44 PM To: [EMAIL PROTECTED] Subject: Re: zSeries performance heavily dependent on working set size Typical first reaction - its the paging subsystem and its not tuned correctly. However, the problem I describe is NOT related to system paging or ANY PARTICULAR OS or DASD tuning. During my experiments, there was NO paging going on as reported by vmstats. The program was running in an LPAR. The 500 MB array was fully contained in a 2 GB LPAR with 2 dedicated CP, and no other processes were running on the processor (all other LPARs were stopped). One CP is going 100%, the other is idle. And I measured similar results on two different models of zSeries. If I saw this behaviour while paging was going on, that is one thing. However, there was no paging. Rather than numbers, I have published a simple program to satisfy yourselves of the phenomenum. This is really a phenomena related so the size of L1 and L2 cache on the processor and how frequently it is flushed and how fast the processor memory is. The phenomena has since been confirmed by the performance people at POK. Its not a "worse case" scenario because it has been also observed with large data movers and progams that do random I/O to large files (and hence tables). The program merely illustrates the problem. Throwing more hardware at it will not fix the problem. The only real solution is to spend the extra programmer time to get the working sets down to a reasonable size. My question still is, "do other platforms (hardware) see this degradation". I have run this on my 300PL and you see two legs in the curve - when the hardware cache miss begins and when the real memory is exhausted and paging starts. ===== Jim Sibley Implementor of Linux on zSeries in the beautiful Silicon Valley "Computer are useless.They can only give answers." Pablo Picasso __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com