diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-11-07 16:48:14 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-11-07 16:48:14 +0100 |
commit | b0d226705cec8f36339adce5d95b4feda1deba02 (patch) | |
tree | 3ab18cce5834465c336b4d9afaeaad9732a1517f /sys/src/libhttpd/alloc.c | |
parent | 17f0b2ce38f3c845a3bbbe0630185ca8dac684a4 (diff) |
bcm: speed up co-processor operations by avoiding i+d cache flush on each operation
coproc.c generated the instrucitons anew each time,
requiering a i+d cache flush for each operation.
instead, we can speed this up like this:
given that the coprocessor registers are per cpu, we can
assume that interrupts have already been disabled by
the caller to prevent a process switch to another cpu.
we cache the instructions generated in a static append
only buffer and maintain separate end pointers for each
cpu.
the cache flushes only need to be done when new
operations have been added to the buffer.
Diffstat (limited to 'sys/src/libhttpd/alloc.c')
0 files changed, 0 insertions, 0 deletions