Today we continue to read from WRL research report.We were reading the report on why operating systems werent getting fast with improvements in hardware. We were comparing M2000, DS3100, Sun4, 8800, Sun3, MVAX2 etc.The operating systems were Ultrix, SunOS, RISC/os, and Sprite.
The first benchmark measures the cost of entering and exiting the kernel. By making repeated getpid calls, it was found that the Sun3 and MVAX2 ultrix took the most time. M2000 RISC/os and DS3100 flavors took the least time. There was also a metric called the 'MIPS Relative speed'. What this metric indicates is how well the machine performed on the benchmark, relative to its MIPS rating and to the Sun3 time for kernel entry-exit. A rating of 1.0 on this scale would mean that the machine ran as expected A rating less than 1.0 means that the machine ran the benchmark slower than expected. and viceversa. The RISC machines turned out to have this rating lower than 1 while the others were close to 1.
The second benchmark is called cswitch. It measures the cost of context switching, plus the time for processing small pipe reads and writes. The benchmark operates by forking a child process and then passing one byte back and forth between parent and child using pipes. Each roundtrip costs two context switches and one kernel read and one kernel write operations. Here too the RISC machines did not perform well except for the DS3100/Ultrix combination.
The third benchmark exercises the select kernel call. It creates a number of pipes, places data in some of those pipes, and then repeatedly calls select to determine how many of the pipes are readable. A zero timeout is used in each select call so that the kernel call never waits. Three configurations were used. The first one was a single pipe with no data. The second one involved ten pipes all empty and the third one used ten pipes all full with data. Again the RISCs did not perform well. The RISC/os's emulation of the select kernel call seemed faulty causing a timeout of 10ms even if the calling program specified immediate timeout.
The first benchmark measures the cost of entering and exiting the kernel. By making repeated getpid calls, it was found that the Sun3 and MVAX2 ultrix took the most time. M2000 RISC/os and DS3100 flavors took the least time. There was also a metric called the 'MIPS Relative speed'. What this metric indicates is how well the machine performed on the benchmark, relative to its MIPS rating and to the Sun3 time for kernel entry-exit. A rating of 1.0 on this scale would mean that the machine ran as expected A rating less than 1.0 means that the machine ran the benchmark slower than expected. and viceversa. The RISC machines turned out to have this rating lower than 1 while the others were close to 1.
The second benchmark is called cswitch. It measures the cost of context switching, plus the time for processing small pipe reads and writes. The benchmark operates by forking a child process and then passing one byte back and forth between parent and child using pipes. Each roundtrip costs two context switches and one kernel read and one kernel write operations. Here too the RISC machines did not perform well except for the DS3100/Ultrix combination.
The third benchmark exercises the select kernel call. It creates a number of pipes, places data in some of those pipes, and then repeatedly calls select to determine how many of the pipes are readable. A zero timeout is used in each select call so that the kernel call never waits. Three configurations were used. The first one was a single pipe with no data. The second one involved ten pipes all empty and the third one used ten pipes all full with data. Again the RISCs did not perform well. The RISC/os's emulation of the select kernel call seemed faulty causing a timeout of 10ms even if the calling program specified immediate timeout.
No comments:
Post a Comment