Jul/2020 Update! I have redone all Indy, Indigo2, O2, Octane and most IRIS Indigo tests using exactly the same model disk (Seagate 36GB 15K ST336753LC), all older systems with 6.5.22m, all newer systems with 6.5.30m, so the data is now much more comparable than the old results. I have obtained a SCSI2SD V6 card and will try that out later in targeted systems, along with one or two SATA SSDs using a SCSI/SATA bridge box. In the future I might also add just a few specific O2/Octane tests using the Fujitsu MAS3367NC and MAX3036NC respectively, since these are the disk models I normally use and supply in such systems. Note that I couldn't get the ST336753LC to work in Onyx, had to use the ST3300655LC instead.
For the conversion to uncompressed video (the first results column), the type of disk used and the SCSI bus performance will make a difference (contrast the R5000SC/180 O2 to the R4K/250 Indigo2, compare to their MPEG results). Also notice the much better results for the Photo JPEG test running on O2 systems - this is because the ICE chip is used to hardware-accelerate the processing, so even a low-spec O2 is very good for JPEG video (assuming compatible settings), but will suffer if converting to other formats.
Though these tests only utilise one CPU, I've included the CPU count anyway. Older results done with just a stopwatch and MediaConvert are those without sub-second timings (I will update these later using dmconvert when I can, which will take a while since at present I do not have any Fuels faster than 600MHz). Eventually I want to have all the main results completed using the same model disk if possible. The table is arranged in order of MPEG performance.
CPU No. L2/L3 IRIX NONE Anim RLE Ph.JPEG Indeo Cinepak MPEG Disk System Type CPUs MHz Cache Version m:ss.ss m:ss.ss m:ss.ss m:ss.ss mm:ss.ss mm:ss.ss Type NOTES Tezro R16000 4 1000 16MB 6.5.26m 0:05.59 0:07.76 0:11.40 0:13.70 00:32.54 00:59.69 1 Fuel R16000 1 900 8MB 6.5.26m 0:06.10 0:08.39 0:12.56 0:15.10 00:35.97 01:06.57 1 Fuel R16000 1 800 4MB 6.5.26m 0:06.89 0:09.70 0:14.33 0:17.53 00:40.95 01:15.98 1 Origin350 R16000 4 700 4MB 6.5.26m 0:07.33 0:11.03 0:16.13 0:19.82 00:46.37 01:25.74 2 Tezro R16000 4 700 4MB 6.5.26m 0:07 0:11 0:16 0:20 00:46 01:26 ? Fuel R16000 1 700 4MB 6.5.26m 0:07 0:12 0:17 0:20 00:47 01:26 ? Fuel R14000 1 600 4MB 6.5.26m 0:08.87 0:12.68 0:18.94 0:23.18 00:54.36 01:40.54 1 Origin300 R14000 2 600 4MB 6.5.30m 0:08.86 0:12.70 0:17.72 0:23.36 00:54.38 01:43.54 3 Octane R14000 2 600 2MB 6.5.30m 0:09.58 0:13.98 0:18.51 0:24.50 00:55.39 01:46.15 3 Fuel R14000 1 500 2MB 6.5.26m 0:11 0:17 0:25 0:30 01:09 02:08 ? Octane R12000 2 400 2MB 6.5.30m 0:13.56 0:20.07 0:27.36 0:35.70 01:22.16 02:37.31 3 Octane R12000 1 400 2MB 6.5.30m 0:13.81 0:20.53 0:27.82 0:36.45 01:23.37 02:38.94 3 O2 R7000 1 600 256K/1MB 6.5.30m 0:17.76 0:24.04 0:15.80 0:41.36 01:26.05 02:44.34 3 Octane R12000 2 350 1MB 6.5.26m 0:15.75 0:23.43 0:33.43 0:40.67 01:34.26 02:54.03 1 CPU mod; cache divisor 1.5. O2 R12000 1 400 2MB 6.5.30m 0:16.50 0:23.22 0:16.19 0:39.90 01:25.41 02:55.50 3 Octane R12000 1 360 2MB 6.5.30m 0:15.04 0:22.49 0:30.61 0:40.08 01:32.37 02:55.82 3 Octane R12000 2 350 1MB 6.5.26m 0:15.94 0:23.32 0:31.72 0:41.59 01:35.24 03:01.59 1 CPU mod; cache divisor 2.0. Octane R12000 1 300 2MB 6.5.30m 0:17.99 0:26.95 0:36.86 0:48.04 01:50.77 03:31.02 3 O2 R12000 1 300 1MB 6.5.30m 0:19.69 0:29.73 0:17.35 0:52.18 01:55.74 03:48.97 3 Onyx2 R10000 4 250 4MB 6.5.26m 0:20 0:31 0:45 0:57 02:12 03:53 ? Octane R12000 1 270 2MB 6.5.30m 0:20.01 0:29.93 0:40.83 0:53.46 02:03.24 03:54.56 3 Octane R10000 1 250 2MB 6.5.30m 0:22.23 0:32.93 0:45.47 0:58.95 02:14.84 04:01.55 3 CPU mod; was an R12K/300 2MB, core swapped with an R10K/250 for O2 and clock changed to 250. Octane R10000 1 250 1MB 6.5.30m 0:23.01 0:33.69 0:46.18 0:59.53 02:16.20 04:04.09 3 O2 R12000 1 270 1MB 6.5.30m 0:20.63 0:31.61 0:17.79 0:56.49 02:07.63 04:12.88 3 O2 R7000 1 350 256K/1MB 6.5.30m 0:18.87 0:28.19 0:15.61 0:56.25 02:13.83 04:15.36 3 O2 R10000 1 250 1MB 6.5.30m 0:20.09 0:31.99 0:17.46 0:59.22 02:15.36 04:16.08 3 O2 R12000 1 250 1MB 6.5.26m 0:18.79 0:30.25 0:16.63 0:56.44 02:11.62 04:16.41 1 CPU mod; 300 core from Octane into a 250 module, but the clock is still at 250. Octane R10000 1 225 1MB 6.5.30m 0:25.49 0:37.40 0:51.35 1:06.21 02:31.31 04:31.33 3 O2 R10000 1 195 1MB 6.5.30m 0:20.95 0:35.78 0:17.82 1:09.78 02:40.35 05:10.00 3 Indigo2 R10000 1 195 1MB 6.5.22m 0:34.96 0:49.04 1:07.62 1:22.79 03:12.51 05:20.66 3 Octane R10000 1 195 1MB 6.5.30m 0:30.43 0:45.29 1:01.40 1:20.35 02:56.84 05:21.59 3 Origin200 R10000 2 180 1MB 6.5.26m 0:30 0:46 1:04 1:20 03:01 05:27 ? Indigo2 R10000 1 175 1MB 6.5.22m 0:37.32 0:52.92 1:14.13 1:30.62 03:32.79 05:54.41 3 Octane R10000 1 175 1MB 6.5.30m 0:34.17 0:50.89 1:08.87 1:30.08 03:18.50 06:02.47 3 O2 R10000 1 175 1MB 6.5.30m 0:29.25 0:46.60 0:23.86 1:25.43 03:08.11 06:02.74 3 O2 R10000 1 150 1MB 6.5.30m 0:30.37 0:50.47 0:25.21 1:35.65 03:35.35 06:56.40 3 O2 R5200 1 300 1MB 6.5.30m 0:19.98 0:34.21 0:16.35 1:19.35 03:09.65 07:01.65 3 Indigo2 R4400SC 1 250 2MB 6.5.22m 0:54.87 1:20.22 1:57.63 2:39.88 05:39.61 09:59.59 3 O2 R5000SC 1 200 1MB 6.5.30m 0:21.62 0:42.28 0:16.78 1:48.91 04:34.30 10:15.85 3 Onyx R4400SC 4 250 4MB 6.5.22m 0:45.82 1:09.22 1:45.45 2:26.67 05:20.66 10:51.99 1 O2 R5000SC 1 180 512K 6.5.30m 0:24.27 0:48.24 0:18.49 2:03.49 05:09.59 11:35.11 3 O2 R5000SC 1 200 1MB 6.3 0:27 0:56 0:16 2:47 08:15 11:41 ? Onyx R4400SC 4 200 4MB 6.5.22m 0:56.21 1:26.93 2:10.03 3:01.91 06:36.70 11:50.74 6 Disk connected via 10MB/sec SE bus. Indy R5000SC 1 180 512K 6.5.22m 1:07.86 1:31.88 2:08.77 2:46.84 06:26.74 12:09.91 3 Indigo2 R4400SC 1 200 2MB 6.5.22m 1:05.47 1:36.87 2:22.17 3:13.36 06:59.61 12:16.21 3 Indy R4400SC 1 200 1MB 6.5.22m 1:07.93 1:39.87 2:32.65 3:17.74 07:03.71 12:24.48 3 Indigo2 R4400SC 1 200 1MB 6.5.22m 1:10.13 1:43.58 2:30.30 3:30.09 07:15.36 12:44.70 3 O2 R5000PC 1 180 - 6.5.30m 0:28.64 0:52.94 0:23.00 2:23.44 05:52.36 12:51.65 3 Indy R5000SC 1 150 512K 6.5.22m 1:14.94 1:43.44 2:28.57 3:10.33 07:32.52 14:17.16 3 Indy R5000PC 1 150 - 6.5.22m 1:18.13 1:46.78 2:35.09 3:21.18 07:55.55 14:45.93 3 Indy R4400SC 1 150 1MB 6.5.22m 1:27.50 2:10.71 3:13.71 4:23.84 09:24.10 16:37.63 3 IRIS Indigo R4400SC 1 150 1MB 6.5.22m 1:30.99 2:10.20 3:23.19 4:18.95 09:36.60 16:39.24 3 Indigo2 R4400SC 1 150 1MB 6.5.22m 1:27.23 2:30.96 3:14.53 4:24.18 09:45.63 16:48.94 3 Indy R4600SC 1 133 512K 6.5.22m 1:30.89 2:06.82 3:03.22 4:05.51 08:50.93 17:22.62 3 Indy R4600PC 1 133 - 6.5.22m 1:39.24 2:15.82 3:25.26 4:31.92 09:47.41 18:47.40 3 Indy R4600PC 1 100 - 6.5.22m 1:57.23 2:46.46 4:14.31 5:38.30 12:20.32 23:51.11 3 IRIS Indigo R4000SC 1 100 1MB 6.5.22m 2:17.83 3:19.63 5:00.77 6:39.86 15:06.75 25:20.88 3 Indy R4000SC 1 100 1MB 6.5.22m 2:13.57 3:19.35 5:01.01 6:43.88 15:12.21 25:39.38 3 Table 8 Disk Refs: [1] Seagate 1" ST336704LCV 36GB 10K SCA [2] COMPAQ 1" BD1468A4B5 146GB 10K SCA [3] Seagate 36GB 15K BF03685A35 (ST336753LC) [4] Fujitsu MAS3367NC 36GB 15K (Worldisk MX03367SC800600S) [5] Fujitsu MAX3036NC 36GB 15K (Worldisk MX03036SC800600X) [6] Seagate ST3300655LC 300GB 15K
Systems which have no graphics head are accessed remotely from another SGI (I use an O2 via 100Mbit link), the exception
being the old 180MHz Origin200 result which was done via remote display of MediaConvert (I'll redo this when I can).
The commands used for each compression scheme are as follows:
NONE: timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=none,squal=0.95,tqual=0.75 movie1.mov outfile.mov RLE: timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=qt_anim,squal=0.75,tqual=0.75 movie1.mov outfile.mov JPEG: timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=jpeg,squal=0.75,tqual=0.75 movie1.mov outfile.mov INDEO: timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=indeo,squal=0.75,tqual=0.75 movie1.mov outfile.mov CINEPAK: timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=qt_cvid,squal=0.75,tqual=0.75 movie1.mov outfile.mov MPEG-1: timex dmconvert -vf mpeg1v,brate=1158000 -p video,rate=25,size=368x288 movie1.mov outfile.mpv
I checked with 'cmp' to make sure these commands output exactly the same movies as created by MediaConvert (they do).
Here is the script I use (including the 2nd main test), for those who wish to run these tests on their own system:
#!/bin/sh echo Movie Data Conversion Tests, Last Change: 05/Aug/2009. Pausing 10 seconds... sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=none,squal=0.95,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 1, COMP = NONE echo /bin/rm outfile.mov sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=qt_anim,squal=0.75,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 1, COMP = ANIM RLE echo /bin/rm outfile.mov sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=jpeg,squal=0.75,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 1, COMP = JPEG echo /bin/rm outfile.mov sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=indeo,squal=0.75,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 1, COMP = INDEO echo /bin/rm outfile.mov sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=368x288,comp=qt_cvid,squal=0.75,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 1, COMP = CINEPAK echo /bin/rm outfile.mov sleep 10 && timex dmconvert -vf mpeg1v,brate=1158000 -p video,rate=25,size=368x288 movie1.mov outfile.mpv echo Above result is for Movie Test 1, COMP = MPEG echo /bin/rm outfile.mpv sleep 10 && timex dmconvert -vf qt -p video,rate=25,size=184x144,comp=qt_mjpega,il=odd,engine=sw,squal=0.95,tqual=0.75 movie1.mov outfile.mov echo Above result is for Movie Test 2, COMP = MJPEGA echo /bin/rm outfile.mov
Prior to running these tests, I shut down mediad and SGI Apache to reduce background noise.
One might ask why these tests are not using a full size/rate video clip. Apart from taking at least four times longer to run (I do have a life, hehe), all I can say is that if you really need to convert such video clips to other formats then use a PC instead (it works well with Handbrake); I know one could use Linux, but I'm content with Windows and Handbrake, my own systems currently being a 5GHz i7 2700K and a 4.5GHz i7 4960X (hopefully soon replaced with a Ryzen 4700X and later a 4950X). The data presented here is to enable the comparison of one SGI to another, not to suggest whether actually using an SGI for this kind of task is a good idea. It's fun using an SGI for video capture and a degree of editing (eg. Cosmo/Cosmo2 are really good at coping with noisy signals from VHS sources), but for real world workloads (especially HD or above), it makes sense to use a modern PC (for most SD capture tasks I use a simple USB dongle), ie. use whatever works best for your own needs. What does intrigue me is whether it would ever be possible to write a version of dmconvert or something like it which could exploit multiple CPUs, but that's beyond my knowledge.
In the future just out of curiosity I might try the tests using a QLA12160 card in Octane via PCI cage to see if that makes any difference (I suspect probably not).
Lastly, note that O2 systems may be slightly faster when operating with lower display resolutions and/or bit depths.
Feedback on this page is most welcome!