I want to write a tools about pipeline analysis , can I get data I want from Intel?

I want to write a tools about pipeline analysis , can I get data I want from Intel?

zhangxiuxia's picture

Now I write a tool about what instruction are excuted at each clock cycle in order to analysis which instruction stalls the pipeline.

My program's input are uops.
I anlysis the dependency (include port. data, ROB, retired buffer),and give excute serial of a segment of uop code. I check it with simple instruction, which is decoded into 1uop.

I want to make my tool more general , So I can anaysis any assmebly code I want .but I donot waht uop the instruction are decoded into.

Does Intel provide such data I want (such decoded uops and some detail about instruction )?

3 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
zhangxiuxia's picture

PTLsim is a cycle accurate x86 microprocessor simulator and virtual machine for the
x86 and x86-64 instruction sets. PTLsim models a modern superscalar out of
order x86-64
compatible processor core at a configurable level of detail
ranging from full-speed native execution on the host CPU all the way down to
RTL level models of all key pipeline structures. In addition, all microcode,
the complete cache hierarchy, memory subsystem and supporting hardware devices
are modeled with true cycle accuracy. PTLsim supports the full x86-64
instruction set
of the Pentium 4+, Athlon 64 and similar machines with all
extensions (x86-64, SSE/SSE2/SSE3, MMX, x87). It is currently the only tool
available to the public
to support true cycle accurate modeling of real x86
microarchitectures.

PTLsim is very different from most cycle accurate simulators used in research
applications. It runs directly on the same platform it is simulating (an
x86-64 or x86 machine running Linux)
and is able to switch in and out of
full out of order simulation mode and native x86-64 mode at any time completely
transparent to the running user code. This lets users quickly profile a small
section of the user code without the overhead of emulating the uninteresting
parts. PTLsim runs unmodified 32-bit x86 and 64-bit x86-64 applications without
special compilers or toolchains.

PTLsim comes in three flavors. The standard version runs any 32-bit or 64-bit
single threaded userspace Linux application. PTLsim/X integrates with
the Xen hypervisor to provide full system x86-64 simulation,
multi-processor and multi-threading support, cycle accurate device and
timing models, and much more. Finally, our next generation version, PTLsim 3.0,
is based on KVM/QEMU to deliver all the functionality of the Xen-based version
plus many groundbreaking new features and usability enhancements.

Compared to competing simulators, PTLsim provides extremely high performance
even when running in full cycle accurate out of order simulation mode. Even
with its optimized core, PTLsim still allows a significant amount of
flexibility
for easy experimentation.

PTLsim is used extensively at hundreds of major universities, industry
research labs and the well known x86 microprocessor vendors Intel and AMD.

PTLsim is now sponsored by Strandera Corporation,
with Matt T. Yourst as the primary development coordinator.

Is PTLsim a precise simulator for Intel processor ?

It seems that PTLsim has its own assumedpipeline structureand is not apparently tied to any actual implementation.

Login to leave a comment.