Miscellaneous > 16 bit DOS Programming

Test results needed: CPU and instruction set detection

(1/1)

Gunther:
The program is a pure Real Mode application and should run under many possible configurations. It examines the CPU as well as the FPU and detects the supported instruction sets.
In addition, special instructions are also searched, which are supported by the hardware as well.

DOSBox emulates only an 80486. That's why the output there looks like this:

--- Code: ---CPU Strings
-----------

Processor Vendor String isn't available.
Processor Brand String isn't available.


Instruction Sets supported by CPU
---------------------------------

80486
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...

Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.


Press any key to end the program...

--- End code ---
On the same machine under plain DOS:

--- Code: ---CPU Strings
-----------

Processor Vendor String: GenuineIntel
Processor Brand String:  Intel(R)Core(TM)i7-7820XCPU@3.60GHz

Instruction Sets supported by CPU
---------------------------------

MMX  SSE  SSE2  SSE3  SSSE3  SSE4.1  SSE4.2
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...

Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.

RDTSC
RDTSCP
MOVBE
POPCNT
RDRAND
RDSEED

Press any key to end the program...

--- End code ---
Under VirtualBox the output is identical.

I appreciate test results with different configurations.

FORTRANS:
Hi,

   Four runs of your program on three systems.


--- Code: ---2 June 2022, P-III Windows 2000.

This program examines CPU, FPU, and the supported Instruction Sets.
The information collected in the process, will be printed on the
screen. It's a lean and handy real mode application in the small
memory model. From 25 KB of source code, 700 lines of code (LOC)
with a file size of 3 KB are then created for the running EXE.

In order to run the program under as many different configurations
as possible, the hardware is not programmed directly at any point.
All inputs and outputs were realized via DOS or BIOS Services.


Press any key to continue...
CPU Strings
-----------

Processor Vendor String: GenuineIntel
Processor Brand String isn't available.


Instruction Sets supported by CPU
---------------------------------

MMX  SSE
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...
Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.

RDTSC

Press any key to end the program...

P-III OS/2.

This program examines CPU, FPU, and the supported Instruction Sets.
The information collected in the process, will be printed on the
screen. It's a lean and handy real mode application in the small
memory model. From 25 KB of source code, 700 lines of code (LOC)
with a file size of 3 KB are then created for the running EXE.

In order to run the program under as many different configurations
as possible, the hardware is not programmed directly at any point.
All inputs and outputs were realized via DOS or BIOS Services.


Press any key to continue...
CPU Strings
-----------

Processor Vendor String: GenuineIntel
Processor Brand String isn't available.


Instruction Sets supported by CPU
---------------------------------

MMX  SSE
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...
Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.

RDTSC

Press any key to end the program...

Pentium M, Windows XP.

This program examines CPU, FPU, and the supported Instruction Sets.
The information collected in the process, will be printed on the
screen. It's a lean and handy real mode application in the small
memory model. From 25 KB of source code, 700 lines of code (LOC)
with a file size of 3 KB are then created for the running EXE.

In order to run the program under as many different configurations
as possible, the hardware is not programmed directly at any point.
All inputs and outputs were realized via DOS or BIOS Services.


Press any key to continue...
CPU Strings
-----------

Processor Vendor String: GenuineIntel
Processor Brand String:  Intel(R)Pentium(R)Mprocessor1.70GHz

Instruction Sets supported by CPU
---------------------------------

MMX  SSE  SSE2
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...
Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.

RDTSC

Press any key to end the program...

Windows XP

This program examines CPU, FPU, and the supported Instruction Sets.
The information collected in the process, will be printed on the
screen. It's a lean and handy real mode application in the small
memory model. From 25 KB of source code, 700 lines of code (LOC)
with a file size of 3 KB are then created for the running EXE.

In order to run the program under as many different configurations
as possible, the hardware is not programmed directly at any point.
All inputs and outputs were realized via DOS or BIOS Services.


Press any key to continue...

CPU Strings
-----------

Processor Vendor String: GenuineIntel
Processor Brand String:  GenuineIntel(R)CPUT2400@1.83GHz

Instruction Sets supported by CPU
---------------------------------

MMX  SSE  SSE2  SSE3
FPU is an 80387.

Although it wouldn't be a problem, this program doesn't check
for AVX, AVX2 and AVX512. In principle, it is possible to use
AVX, for example. But that works only under plain DOS. However,
special actions are then required for this.

It follows a screen with a selection of further instructions
that this CPU also supports.


Press any key to continue...
Further properties and instructions of this CPU
-----------------------------------------------

FPU and CPU are on the same chip.

RDTSC

Press any key to end the program...
--- End code ---

HTH,

Steve

Gunther:
Steve,


--- Quote from: FORTRANS on June 03, 2022, 12:42:06 AM ---   Four runs of your program on three systems.
HTH,

--- End quote ---

yes, that's a great help. Thank you.  :thumbsup:

Navigation

[0] Message Index

Go to full version