Dear Ali:
Could you please enlighten me and teach how can I improve performance of PADS Layout software (formerly PowerPCB) by using Sun Studio compiler?
If complaining to the vendor doesn't help, you can do the same thing a lot of us do in that case, either find someone whose software does spread the load amongst many cores or write your own. Evidently your vendor doesn't want to maximize their software's performance on multicore systems. That's their fault and yours for using them, not mine.
Shall I call somebody at Mentor Graphics and ask for a source code, so I could "make -jX" the executables at home? Or just tell them that Pete told me to recompile all stuff at their site, because it defeats both Intel C and Microsoft Visual C together?
What do you pay them for? Not to get you high performance software for the tasks you wish to do. If a software vendor like Oracle would allow someone to get more performance from some hardware doing all the necessary things, Oracle would find a way to match or beat them. People would stop paying them billions for their software, if they didn't. THere are companies like IBM, MySQL, SQLServer and others to take their place, if they fail to keep up. But unlike Mentor Graphics, their software does run fine and scales quite well on multiple core systems. IBM also has a autopar option in their compilers. And they have a wide ranging amount of software.
All you are saying is that you are lazy and don't want to find a better alternative. You want it handed to you on a silver platter. Well the real world doesn't work that way. They try to speed up critical areas by trying different methods. They try adding memory. If its maxed, they use different systems that can handle more memory. They try faster memory. They try faster disk. They try different software vendors. Different hardware vendors. They even go and look at freeware and shareware products that come close to what they need. And then they customize it to their needs.
The nice thing about having the source code, is that you can rework it for a changing environment. If faster single cores aren't available, they split the task and do it on multiple fast cores. Perhaps they try to make it for a streaming coprocessor and thus do it on one or more GPUs. Some vendors would give you source code as long as they can retain the rights to sell to others any modifications you make (typically they would need to generalize it to be applicable to others). That is between you and the vendor.
In any case, the best benchmark is running your task on their hardware and/or software and may the best score or the best score per buck win.
Pete |