1. compile for your particular processor, generating assembly files. Just use your normal compile command line and add -S and -march=
g++  -g -Wall -march=pentium4 -O2 -S -I.. *.cc
2. search through the .s files for the new instructions and xmm registers listed on this page: http://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
 eg.
fgrep "movss" *.s  | grep -v "\.string" -
fgrep "xmm" *.s  | grep -v "\.string" -
I found that it used xmm0 now and then but only used a couple of the new instructions a couple of times.
 It makes me wonder if this will make it slower because it has to save the extra registers on to the stack every time. I can only assume GCC is smart enough so it knows it doesn't have to do this.
 
All of the interesting technological, artistic or just plain fun subjects I'd investigate if I had an infinite number of lifetimes. In other words, a dumping ground...
Subscribe to:
Post Comments (Atom)
tim's shared items
Blog Archive
- 
        ▼ 
      
2008
(150)
- 
        ▼ 
      
May
(22)
- Sunlight & GNU Scientific library
 - Google AJAX library hosting
 - Authentication, passwords, hashing and salts for w...
 - Secure Programming for Linux and Unix
 - Finance application - Buddi
 - Git to CVS and back again
 - Google Doctype & Compiere open source ERP & CRM
 - DNS
 - GCC FORTIFY_SOURCE
 - IPv6
 - Beer Brewing Software
 - PostgreSQL & REST & Adobe Flex
 - Book - C++ Templates: The Complete Guide
 - Python & Vim & C++ templates book
 - client side XSL and SVG
 - more xsl
 - XSL
 - GPS units, botnet archives and Trygve Reenskaug
 - more NTP scripts
 - How to determine if you program is using MMX, SSE ...
 - mapping #include files using dot and graphviz
 - Gmail IMAP and virtual box
 
 
 - 
        ▼ 
      
May
(22)
 
No comments:
Post a Comment