Re: Kernel mode programming -precisions
From: Simon 'corecode' Schubert (corecode_at_fs.ei.tum.de)
To: firstname.lastname@example.org Date: Tue, 18 Jan 2005 21:32:35 +0100
On Tuesday, 18. January 2005 20:54, Street Chaman wrote:
> Actually, my soft is a kind of interactive filter: it takes a lot of imput
> parameters (from keyboard at the moment, but as soon as i've understood how
> it works, i will increase the number of supported io devices); treats it in
> a particular way and produces an output. This 'particular way' requires a
> lot of clock cycle, so speed is my first problem; (that's part of reason
> why everything is directly written in assembly). I've already buffered
> input and output, but only as far at it was possible: since loop (X) input
> could affect loop (X-1) general data manipulation, and change output, it
> must be detected quickly. The time needed to read/write is still to long.
> When CPU is waiting on some new data, he cannot preform any other
> operation, and freezes data manipultion; that's why I'm looking for a new
> way to in/output the soft...
you don't describe where the data comes from and where to goes to. if it's a
file, you might want to use memory mapped files (mmap(2)), which will give
you (about) the least overhead in reading/writing which can be achieved.
so your problem more sounds like a cpu-bound than an io-bound application.
details could help to understand and give advice.
oh yes, if your "particular way" is so complex and critical that it needs to
be written in assembler you might even consider using an FPGA extension, but
that's a completely other way of solving speed problems. furthermore that's
just of interest if your algorithm is vectorizable, and it didn't sound like
-- /"\ \ / \ ASCII Ribbon Campaign / \ Against HTML Mail and News
- application/pgp-signature attachment: stored