* [Qemu-devel] Ask for help with estimate of disassembly speed
@ 2012-07-12 15:30 Евгений Олегович
2012-07-13 10:02 ` Max Filippov
2012-07-13 10:20 ` Peter Maydell
0 siblings, 2 replies; 3+ messages in thread
From: Евгений Олегович @ 2012-07-12 15:30 UTC (permalink / raw)
To: qemu-devel
[-- Attachment #1: Type: text/plain, Size: 1765 bytes --]
Hello, Dear Qemu developer!
My name is Eugene. I am a student of Mathematics and Mechanics St.
Petersburg State University Faculty.
*Why i am writing to You:*
We (our students group) need to design and develop* Disassembler, that can
parse (recognize) one **machine instruction in a minimum available clock
(tact cycle) time. *Or such Disassembler, that can parse ALL instruction
with max speed in average. In this case, Average means ratio of all
instruction to all execution time.
*Today:*
We have developed rough disassembler based on Intel encoding table (from
information in documentation volume "Instruction optimization"). And now we
need to compare speed of our disassembler with others (with Yours too). And
the second task is to simplify our model of disassembly (We consider 3
models of building Diassembler - Finite State Machine, Jump from a Table
and Block-Diagram, witch we realize with conditional crossing).
So, in our Disassembler, that we call *Speedy ( Block-Diagram was used) *-
we can simply set time counter at the begin and at the end of parsing
instruction. But we can't repeat this thing with Yours Disassembler. It
follows us ask You for help us.
*
What are we ask:*
We will be very glad and grateful, if You can send to us pure *DisAsm code
(DLL with parse function or another files)*, which speed we can measure. If
You have another materials(maybe any speed grafics, or a tests set that can
help us) or thinking of this theme - it would be very good.
What is the speed of parsing one (or more) instruction in Yours
Disassembler?
Have you made any verification tests? (Now we are developint it)
What is the metric, that You estimate the speed of Disassembler?
Thanks for reading and sorry for my mistakes,
Sincerely,
Eugene.
[-- Attachment #2: Type: text/html, Size: 4345 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] Ask for help with estimate of disassembly speed
2012-07-12 15:30 [Qemu-devel] Ask for help with estimate of disassembly speed Евгений Олегович
@ 2012-07-13 10:02 ` Max Filippov
2012-07-13 10:20 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Max Filippov @ 2012-07-13 10:02 UTC (permalink / raw)
To: Евгений Олегович
Cc: qemu-devel
Hi.
On Thu, Jul 12, 2012 at 7:30 PM, Евгений Олегович
<futureboyinbox@gmail.com> wrote:
[...]
> We have developed rough disassembler based on Intel encoding table (from
> information in documentation volume "Instruction optimization"). And now we
> need to compare speed of our disassembler with others (with Yours too). And
> the second task is to simplify our model of disassembly (We consider 3
> models of building Diassembler - Finite State Machine, Jump from a Table and
> Block-Diagram, witch we realize with conditional crossing).
> So, in our Disassembler, that we call Speedy ( Block-Diagram was used) - we
> can simply set time counter at the begin and at the end of parsing
> instruction. But we can't repeat this thing with Yours Disassembler. It
> follows us ask You for help us.
In every QEMU target that works via TCG there's a function named
disas_[target-specific name]_insn (for x86 it is called disas_insn).
This function can roughly be called 'disassembler'. It analyses one
guest opcode and generates a series of TCG instructions that implement it.
It's not clear to me which speed you're trying to measure, if your goal is
"average time to disassemble an average instruction" then you can sum
up time spent in disas_insn and divide it by the number of disas_insn
invocations.
[...]
--
Thanks.
-- Max
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] Ask for help with estimate of disassembly speed
2012-07-12 15:30 [Qemu-devel] Ask for help with estimate of disassembly speed Евгений Олегович
2012-07-13 10:02 ` Max Filippov
@ 2012-07-13 10:20 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2012-07-13 10:20 UTC (permalink / raw)
To: Евгений Олегович
Cc: qemu-devel
On 12 July 2012 16:30, Евгений Олегович <futureboyinbox@gmail.com> wrote:
> We will be very glad and grateful, if You can send to us pure DisAsm code
> (DLL with parse function or another files), which speed we can measure. If
> You have another materials(maybe any speed grafics, or a tests set that can
> help us) or thinking of this theme - it would be very good.
(1) The QEMU disassembler is used for debug logging only so we don't
care much about its performance
(2) For most CPUs we have simply reused the disassembler from
GNU binutils. If you are looking for a comparison for benchmarking
you will find it much easier to use the binutils disassembler directly
(3) This is your project and I think it is very unlikely that you will
find anybody else willing to set up benchmarking infrastructure for
your benefit.
-- PMM
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-07-13 10:20 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-12 15:30 [Qemu-devel] Ask for help with estimate of disassembly speed Евгений Олегович
2012-07-13 10:02 ` Max Filippov
2012-07-13 10:20 ` Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).