Things that need to be twaked/improved: cache

Support and general discussion.
Post Reply
User avatar
omarsis81
Posts: 703
Joined: Thu 17 Dec, 2015 6:20 pm

Things that need to be twaked/improved: cache

Post by omarsis81 » Sun 10 Jul, 2016 5:16 am

I run SpeedSys in a real 430VX motherboard with a Pentium MMX 233 and then compared with PCem11. Big surprise! L1 is way out of scale compared to real microprocessor.
Pentiums MMX have 16 kb L1 for data (what is measured by SpeedSys). PCem, reports 64 kb using "a little" cache; 128 kb using "a bit" and 256 kb selecting "some" and a hilarious 512 kb on "a lot".

First pic, real hardware.
Second, PCem 11
VD_233-ConvertImage.jpg
VD_233-ConvertImage.jpg (70.63 KiB) Viewed 2579 times
speedsys1-little.jpg
speedsys1-little.jpg (111.06 KiB) Viewed 2580 times


Regarding, L2 or motherboard cache things get more obscure: SpeedSys detects the following L2 based on each cache configuration
Case 1, little cache, 128 kb
Case 2, a bit cache, 256 kb
Case 3, some, 512 kb

Fine so far, however, SiSoft Sandra 2001 can't detect any L2 cache (I tried each PCem's cache configuration, none works)
Of course, in my real motheboard it detects 512 kb L2 cache
Attachments
sandra_nol2.jpg
sandra_nol2.jpg (61.2 KiB) Viewed 2578 times

User avatar
omarsis81
Posts: 703
Joined: Thu 17 Dec, 2015 6:20 pm

Re: Things that need to be twaked/improved: cache

Post by omarsis81 » Sun 10 Jul, 2016 5:17 am

boot.jpg
boot.jpg (212.6 KiB) Viewed 2578 times
Also, in the boot screen it doesn't detect any L2 cache either

User avatar
omarsis81
Posts: 703
Joined: Thu 17 Dec, 2015 6:20 pm

Re: Things that need to be twaked/improved: cache

Post by omarsis81 » Sun 10 Jul, 2016 5:19 am

In my opinion, L1 should be hardcoded and shouldn't be allowed to be altered, 16+16 kb on the Pentium MMX. You can, however, provide different options for L2 motherboard cache, 128, 256, 512, 1 or 2MB.

Thank you, and sorry for the long post

User avatar
SarahWalker
Site Admin
Posts: 1711
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Things that need to be twaked/improved: cache

Post by SarahWalker » Sun 10 Jul, 2016 8:07 am

The cache emulation is complete garbage, and I would have removed it if I hadn't had numerous people asking me not to. It isn't possible to do even remotely accurate cache emulation without destroying emulator performance.

Battler
Posts: 793
Joined: Sun 06 Jul, 2014 7:05 pm

Re: Things that need to be twaked/improved: cache

Post by Battler » Sun 10 Jul, 2016 1:02 pm

- omarsis81: The L2 cache detection depends on the emulated boards. I've been testing the emulation of some ASUS boards that I have BIOS'es and datasheets of, for about a year now, they seem to detect 512 kB L2 cache and consequently have insanely fast I/O - so fast that the POST screen flies by so fast that it's VERY difficult to get into Setup.
Of course, the L2 cache appears as none on any board that's present in mainline PCem. Now I wonder why some BIOS'es detect so much of it.

User avatar
omarsis81
Posts: 703
Joined: Thu 17 Dec, 2015 6:20 pm

Re: Things that need to be twaked/improved: cache

Post by omarsis81 » Mon 11 Jul, 2016 2:13 pm

SarahWalker wrote:The cache emulation is complete garbage, and I would have removed it if I hadn't had numerous people asking me not to. It isn't possible to do even remotely accurate cache emulation without destroying emulator performance.
I believe the goal of every emulator is to be a close to the real thing as possible, so I wouldn´t mind some perfomance loss as long as the cache system works fine.
Another option could be to have more profiles for caches, like the ones we have now plus one or two more profile entries, like

- a little
- a bit
- some
- a lot
- inifine
- real emulation w/ 512 kb
- real emulation w/ 1024 kb

User avatar
SarahWalker
Site Admin
Posts: 1711
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Things that need to be twaked/improved: cache

Post by SarahWalker » Mon 11 Jul, 2016 5:07 pm

I don't think you'd tolerate the performance loss this would cause.

User avatar
omarsis81
Posts: 703
Joined: Thu 17 Dec, 2015 6:20 pm

Re: Things that need to be twaked/improved: cache

Post by omarsis81 » Mon 11 Jul, 2016 5:38 pm

SarahWalker wrote:I don't think you'd tolerate the performance loss this would cause.
Could it be possible to have the cache system on a dedicated thread?

User avatar
SarahWalker
Site Admin
Posts: 1711
Joined: Thu 24 Apr, 2014 4:18 pm

Re: Things that need to be twaked/improved: cache

Post by SarahWalker » Mon 11 Jul, 2016 9:08 pm

Er, no. As impossible as splitting the CPU emulation over multiple threads.

Post Reply