SchedMachineModel clarifications

If you haven't found it yet, the last public AMD Software Optimization
Guide for Family 15h is here:
http://developer.amd.com/wordpress/media/2012/03/47414_15h_sw_opt_guide.pdf

This one describes both Bulldozer and Piledriver processors. Chapter 2
will given an overview of the Microarchitecture and Appendix B gives some
additional details on which pipes are used for where.

I haven't yet looked in detail at your patch to check your model, but at
minimum the comments, references and naming still all refer to Sandy Bridge
which is confusing at best - and leaves it a bit unclear what you've
intentionally changed and what is there because it was cloned from the
Sandy Bridge model but yet changed.

Do you have any performance measurements?

--mev, Mike Vermeulen (work for AMD but posting from non-AMD account where
I'm subscribed)

All ,

Hi Mike,

Thank you for the link and my bad last mail has the old patch file.

Please have look at the attached patch file herewith,which has the latest changes.

i’m new to llvm testing framework and cross compilation as such ,Please can you through some lights like references etc ,Which states that how can i cross compile the llvm for Bulldozer and run the performance test against my changes.So that i can tune for a better result.

Thanks
~Umesh

BulldozerScheduleModel .patch (6.19 KB)

I made a quick cross check with information in the SWOG (Software Optimization Guide). The port assignments look consistent. A few of the latency values are slightly different from the SWOG, e.g. WriteFRcp → 6, WriteFSqrt → 29 and WriteCvt* → 4 seem to be suggested instead.

Others are in better position to describe how to use llvm performance framework.

–mev, Mike Vermeulen (work for AMD but posting from non-AMD email)

Thanks mike will make required changes .please someone from the group can hint me how to use llvm performance to benchmark ?

Thanks
Umesh