flat assembler
Message board for the users of flat assembler.
Index
> Main > Does paging slow down memory access? Goto page Previous 1, 2 |
Author |
|
ouadji 24 Oct 2010, 23:56
Quote: ouadji: Quote: revolution: this is normal, this mechanism is fully hardware |
|||
24 Oct 2010, 23:56 |
|
revolution 25 Oct 2010, 01:42
You must also consider the design of your OS. If your app needs to have contiguous RAM then paging can significantly improve overall speed. It is far quicker to build page table entries to add more RAM to an existing allocation than it is to have to copy the contents of RAM to other places to make enough space to keep the allocation contiguous.
As usual, this is a trade-off, and it depends upon what your app is actually doing. |
|||
25 Oct 2010, 01:42 |
|
Alphonso 25 Oct 2010, 05:08
FWIW I did some RAM benchmarks (3rd party) on non PAE 32-bit, PAE 32-bit and 64-bit some time ago. The non-PAE 32-bit showed the best memory latencies ~1% better IIRC than the others (less to look up I guess). Could not test no paging though but if someone comes up with a test program I would be happy to give it a try.
|
|||
25 Oct 2010, 05:08 |
|
Tomasz Grysztar 25 Oct 2010, 05:20
Something from the documentation of PMODE/W (this was an open-source DOS extender, from which I was learning basics of protected mode back in the 90's):
Quote: In addition, under a clean or XMS system, paging will not be enabled. This is only a minor speed increase, but there is no real need to manage paging. |
|||
25 Oct 2010, 05:20 |
|
edfed 25 Oct 2010, 09:55
one more argument to don't use paging in an intessive random memory access program:
using paging consumes more energy because it uses additional circuitry. save the planet!! |
|||
25 Oct 2010, 09:55 |
|
sinsi 25 Oct 2010, 10:03
In the days of DOS on a 486 I remember quite a few games that would crawl if emm386 was loaded, maybe due to paging?
|
|||
25 Oct 2010, 10:03 |
|
edfed 25 Oct 2010, 10:28
Tomasz Grysztar wrote: Something from the documentation of PMODE/W (this was an open-source DOS extender, from which I was learning basics of protected mode back in the 90's): on a very large scale, like 40 days of computing, a minor speed increase is not negligeable. it can easy lead to extra hours or minutes. exactlly like ppm in chemical industry, centimeters of wire (VS meters) in electronics, grams of matter in car manufactures, etc... that leads to thousands dollars if applied on large series. |
|||
25 Oct 2010, 10:28 |
|
f0dder 25 Oct 2010, 11:15
sinsi wrote: In the days of DOS on a 486 I remember quite a few games that would crawl if emm386 was loaded, maybe due to paging? edfed wrote: on a very large scale, like 40 days of computing, a minor speed increase is not negligeable. it can easy lead to extra hours or minutes. _________________ - carpe noctem |
|||
25 Oct 2010, 11:15 |
|
bitRAKE 28 Oct 2010, 03:04
IIRC, there are several tricks in the OS to minimize INVLPG use (cannot recall the exact presentation). Efficient page table organization also helps: use of large pages for example. Unfortunately, (the idea of) security trumps efficiency in Windows.
|
|||
28 Oct 2010, 03:04 |
|
edfed 28 Oct 2010, 10:36
what is sure is that paging can be used as part of an algorythm.
for example, shifting, exchanging, adding several 4096 bytes arrays. if the representation of a 4096 * 4096 array uses paging to manipulate collumns and rows, it will increase significantlly the speed of the global algo. and needs (16k + 4) * 4096 bytes (64 MB) to hold the paging structure of one 4096*4096 array. it will only act on virtual adressing, but from a program point of view, it will be a real data exchanging or shortcut, only using a couple of instructions to move these datas. then, paging can speed up a lot assuming you need array computations, even if you need to reload the entire TLB. |
|||
28 Oct 2010, 10:36 |
|
Goto page Previous 1, 2 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.