Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Achieve 8086 Execution Speed. #72

Open
rdnelson opened this issue Jan 18, 2013 · 2 comments
Open

Achieve 8086 Execution Speed. #72

rdnelson opened this issue Jan 18, 2013 · 2 comments

Comments

@rdnelson
Copy link
Owner

Current speed is approximately ~47.5 KIPS.

The 4.77MHz 8086 was rated to have an execution speed of 0.33 MIPS (330 KIPS) and the 10 MHz 8086 was rated at 0.75 MIPS, (750 KIPS) [1]. This means that Libra should be sped up by ~7-16 times.

For reference, Virgo's execution speed is ~13.0 KIPS (~3.7 times slower than Libra.)

The Virgo and libra numbers were calculated using the print_numbers.asm file in the gui branch.

[1] http://lowendmac.com/lowendpc/tech/8086.shtml

@DarrenStahl
Copy link
Collaborator

Running in release mode on Win32 I am able to produce ~200 KIPS by skipping the prints to screen using step over print_num.

Bottleneck is my CPU: i5 3570k, using only 1 of 4 cores. If we can split the work onto multiple cores exceeding 8086 execution speed may be sooner than expected.

@rdnelson
Copy link
Owner Author

I'm not sure that there's a way to parallelize the execution of the programs. They are written for a single core, and each step must be executed linearly.

The GUI updates should already be in a separate thread, although that should be confirmed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants