Processors tests (compiling)

Some tests are performed on many different processors from 8086 to modern CPU's. The initial purpose of the tests is the evaluation of my own compiler. This tests include program compiling. In this tests context.c (C port of context.cpp/4,506 lines/101,032 bytes), context.ctx (context.066 - port of context.cpp/4,247 lines/91,274 bytes) and context.pas (context.tp7/2,395 lines/65,001 bytes, context.tp1/2,362 lines/64,051 bytes, context.tp3/2,362 lines/63,419 bytes) compiled with different compilers listed below. Comparison with context.pas is not entirely correct since it's code is significantly different and smaller in size.

Compiler Remark
110 Context 1.10 + Asm8086/Initial version
102 Context 1.02 + Asm8086
103 Context 1.03 with direct code generator
GCC Default version for Linux distribution
IC4 Intel C 4.5\#pragma compact\set :INCLUDE:=INC\ic86 context.c\link86.exe cstdoss.obj,context.obj,cdosnfs.lib to context.exe exe bi ss(stack(4096))
MC5 Microsoft C 5.10\cl.exe /AS /DUSEMSFTC /IINCLUDE /F 2000 context.c
TC2 Turbo C 2.01
WC6 Watcom C 6.5\wcc.exe context.c /dUSEMSFTC /dUSECTYPE /ml /iH\wlink.exe File context.obj Library clibl.lib OPtion Stack=8192
TP1 Turbo Pascal 1.0
TP3 Turbo Pascal 3.0
TP7 Turbo Pascal 7.0

Most of the results were obtained on real machines, some were also obtained on emulators. Some of them are correct, others are not:

Cpu: Compiler:

System/CPU Compiler Time (sec) Remark
Core i5-4690S@3200/VMWare TP7 0.009  
Core i5-4690S@3200/VMWare 103 0.015  
Athlon 64-3200+@2000 TP7 0.015  
Pentium 4@1600 TP7 0.029  
Pentium III EB@533 TP7 0.051  
Core i5-4690S@3200/VMWare TC2 0.064  
Core i5-4690S@3200/VMWare 102 0.083  
Pentium III EB@533 103 0.096  
AMD K6@200 TP7 0.100 Could not be repeated
Core i5-4690S@3200/VMWare TC2 0.121 Compile via assembly (tcc -B)
AMD K6@200 TP7 0.129 MS DOS/smartdrv
Pentium MMX@166 TP7 0.130 MS DOS/smartdrv
AMD K6@200 TP7 0.154 FAT16
Pentium MMX@166 TP7 0.185  
AMD K6@200 103 0.186 NTFS
AMD K6@200 103 0.196 MS DOS/smartdrv
AMD K6@200 103 0.219 FAT16
Pentium MMX@166 103 0.249 MS DOS/smartdrv
Pentium III EB@533 TC2 0.281  
Core i5-4690S@3200 GCC 0.283  
Core i5-4690S@3200/VMWare IC4 0.302  
Pentium MMX@166 103 0.302  
Core i5-4690S@3200/VMWare MC5 0.369  
Am486DX2@66 TP7 0.378  
Core i5-4690S@3200/VMWare 110 0.532  
Pentium III EB@533 102 0.560  
Pentium III EB@533 TC2 0.595 Compile via assembly (tcc -B)
Am486DX2@66 TP3 0.681 Compile to memory
AMD K6@200 TC2 0.541  
Pentium MMX@166 TC2 0.759  
Am486DX2@66 TP1 0.884 Compile to memory
Core i5-4690S@3200/VMWare WC6 0.858  
Am486DX2@66 103 0.983  
AMD K6@200 102 1.145 MS DOS/smartdrv
AMD K6@200 TC2 1.257 Compile via assembly (tcc -B)
AMD K6@200 102 1.276 FAT16
AMD K6@200 102 1.290 NTFS
Pentium III EB@533 MC5 1.294  
Pentium MMX@166 102 1.409 MS DOS/smartdrv
Core i5-4690S@3200 GCC 1.423 Max optimization (-O3)
Pentium III EB@533 IC4 1.559  
Pentium MMX@166 TC2 1.659 Compile via assembly (tcc -B)
Pentium MMX@166 102 1.661  
Am386SX@33 TP7 1.902  
Am486DX2@66 TC2 2.428  
Am386SX@33 TP3 2.750  
Pentium III EB@533 110 3.073  
AMD K6@200 IC4 3.276 FAT16
Pentium III EB@533 WC6 3.328  
AMD K6@200 MC5 3.440 FAT16
AMD K6@200 MC5 3.470 NTFS
Pentium MMX@166 MC5 3.517 FAT16
AMD K6@200 IC4 3.610 NTFS
Pentium MMX@166 MC5 3.956 NTFS
Pentium MMX@166 IC4 4.449 FAT16
Am386SX@33 TP1 4.620  
Pentium MMX@166 IC4 4.710 NTFS
Am286@8 TP7 5.438  
Am386SX@33 103 5.460  
Am486DX2@66 102 5.603  
Am486DX2@66 TC2 5.630 Compile via assembly (tcc -B)
AMD K6@200 WC6 6.670 FAT16
AMD K6@200 WC6 6.745 NTFS
Pentium MMX@166 WC6 7.525 FAT16
AMD K6@200 110 7.674 MS DOS/smartdrv
Am286@8 TP3 7.960 Compile to memory
AMD K6@200 110 7.984 FAT16
AMD K6@200 110 8.577 NTFS
Pentium MMX@166 110 8.628 FAT16
Pentium MMX@166 WC6 9.021 NTFS
Pentium MMX@166 110 9.168 NTFS
Am386SX@33 TC2 11.673  
Pentium MMX@166 110 11.808 MS DOS/smartdrv
Am486DX2@66 MC5 13.112  
Am286@8 TP1 13.690 Compile to memory
Pocket 8086/V30@4.77 TP7 14.326 CF Card
Am486DX2@66 IC4 16.024  
Am286@8 103 18.896  
Pocket 8086/V30@4.77 TP3 20.780 Compile to memory
Pocket 8086/8088@4.77 TP7 21.813 CF Card
PCem/IBM 5160/8088@4.77 TP7 22.632  
PCjs/IBM 5150/8088@4.77 TP3 23.690 Compile to memory
Am386SX@33 TC2 28.850 Compile via assembly (tcc -B)
PCem/IBM 5160/8088@4.77 TP3 29.400 Compile to memory
Pocket 8086/8088@4.77 TP3 30.500 Compile to memory
Am286@8 TC2 35.321  
Am486DX2@66 WC6 36.216  
Am386SX@33 102 36.744  
Pocket 8086/V30@4.77 TP1 37.660 Compile to memory
Am486DX2@66 110 38.513  
PCjs/IBM 5150/8088@4.77 TP1 42.060 Compile to memory
PCem/IBM 5160/8088@4.77 TP1 52.030 Compile to memory
Pocket 8086/8088@4.77 TP1 52.590 Compile to memory
Pocket 8086/V30@4.77 103 53.396 CF Card
Pocket 8086/V30@4.77 103 71.411 USB Pen Drive
Am386SX@33 MC5 72.372  
Pocket 8086/8088@4.77 103 92.725 CF Card
Am286@8 TC2 96.899 Compile via assembly (tcc -B)
Am386SX@33 IC4 97.597  
Pocket 8086/V30@4.77 TC2 102.722 CF Card
Am286@8 102 146.393  
Pocket 8086/V30@4.77 TC2 166.772 USB Pen Drive
Pocket 8086/8088@4.77 TC2 167.432 CF Card
Am386SX@33 WC6 209.284  
Am286@8 MC5 223.077  
Am386SX@33 110 224.121  
Pocket 8086/V30@4.77 TC2 234.338 CF Card/Compile via assembly (tcc -B)
Am286@8 IC4 297.400  
Pocket 8086/V30@4.77 102 330.304 CF Card
Pocket 8086/8088@4.77 TC2 375.128 CF Card/Compile via assembly (tcc -B)
Pocket 8086/V30@4.77 TC2 380.511 USB Pen Drive/Compile via assembly (tcc -B)
Pocket 8086/V30@4.77 102 535.748 USB Pen Drive
Pocket 8086/8088@4.77 102 568.433 CF Card
Pocket 8086/V30@4.77 MC5 626.221 CF Card
Am286@8 WC6 644.128  
Am286@8 110 675.879  
Pocket 8086/V30@4.77 IC4 810.461 CF Card
Pocket 8086/8088@4.77 MC5 1,012.445 CF Card
Pocket 8086/8088@4.77 IC4 1,318.854 CF Card
Pocket 8086/V30@4.77 WC6 1,580.658 CF Card
Pocket 8086/V30@4.77 110 1,876.410 CF Card
Pocket 8086/8088@4.77 WC6 2,485.052 CF Card
Pocket 8086/8088@4.77 110 3,173.401 CF Card

Top.Mail.Ru
Сайт создан в системе uCoz