Messages in this thread | | | Date | Tue, 24 Aug 2004 13:04:15 -0700 (PDT) | From | Davide Libenzi <> | Subject | Re: [patch] lazy I/O bitmap copy for i386 (ver 2) ... |
| |
On Tue, 24 Aug 2004, Davide Libenzi wrote:
> The following patch implements the lazy I/O bitmap copy for the i386 > architecture. It uses an invalid bitmap offset inside the TSS to eventually > handle the correct bitmap update in the GPF handler. The logic is the same > of the first version, plus the usage of get/put_cpu() (thx Brian) and the > nesting over the latest Ingo variable bitmap bits.
As followup, I instrumented the switchto code to do something like:
if (prev->io_bitmap_ptr) { if (tss->io_bitmap_base == INVALID_IO_BITMAP_OFFSET_LAZY) no_hit_gpf++; else hit_gpf++; }
After a couple of minutes of light X usage I get:
Hit: 1017 NoHit: 29541
This is FC1 up-to-date (yesterday's ~60% rate was due an incorrect test performed in the instrumentation code). Did not run any perf test, but for sure updating an unsigned long should result faster than memcpy/memset memory regions, during context switches.
- Davide
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |