Home > Mac OS X > Optimizing Your Application with System Trace in Shark Optimizing Your Application with System Trace in Shark Eugenia Loli 2006-02-16 Mac OS X 12 Comments With Shark’s System Trace, you get a detailed view of how your code interacts with Mac OS X. This advanced article digs deep into Shark, and how it helps you optimize your code. About The Author Eugenia Loli Ex-programmer, ex-editor in chief at OSNews.com, now a visual artist/filmmaker. Follow me on Twitter @EugeniaLoli 12 Comments 2006-02-16 6:04 am youknowmewell Eugenia, I can’t help but notice that you seem to link to many rather technically oriented articles. I’m just wondering if you actually understand the articles and are technically oriented or if you are simply sharing information that you think may be interesting to osnews readers? 2006-02-16 7:59 am chekr I remember Eugenia from back in the BeOS days And I can vouch that she is well capable of understanding these articles. probably more than we can say for you 2006-02-16 6:52 am hraq Great development tool. I wish Microsoft Produces Such simple and Powerful tools in their next releases. OSX applications will be so optimized thanks to such these Tools. OSX applications seem to benefit greatly from multithreading and more RAM unlike windows applications which need more clock frequency than anything else. 2006-02-16 8:43 am Hakime I submitted this article as a news to osnews a few days ago, but it has not been published. So i am very glad that Eugenia decided to publish it, because i think this kind of article helps to understand what great tools Apple and the mac platform in general propose in their development tools, and Shark is a great and rather unique tool for application optimization. For people wishing to develop on mac, its really worth to read this article. Thanks Eugenia for this posting, sometimes i am tired to so see only polemical article publised on osnews without any real interest. 2006-02-16 10:58 am stew There may be a million things I don’t like about OS X and Xcode, but Shark is the one of the most useful tools I’ve seen. No more guesswork about what it could be that slows down your code – just use Shark and see what’s really happening. 2006-02-16 11:53 am tyrione Nice tool and one that would’ve been nice back at NeXT. Now if some nice FEM/FEA engineering applications were moved to OS X I’d be happy. 2006-02-16 1:18 pm SEJeff I didn’t know anything like this existed. This looks very similar to sysprof for linux with a pretty pie graph. http://www.daimi.au.dk/~sandmann/sysprof/ 2006-02-16 1:56 pm Duffman Why when an article is posted about windows, BSD or Mac OS X, there is always a linux user coming and saying: “Hey, we have a thing like that”… We just don’t care, this article is about Shark on Mac OS X. Write your stuff on a Linux article or post a news about it. 2006-02-16 6:29 pm dsmogor Many linux users seem to be attached to the idea that technical excellence in many (every) ways is the reason for its existence. Therefore seeing that commercial developers comms with something competitive (especially in developer toolkit departament) they feel that the existence of linux is challenged and thus stand in to protect it. 2006-02-17 12:31 am SEJeff Actually, Mac OS X and Linux share the same Unix heritage. Both being Posix operating systems mean that they both are technically superior to “other” operating systems. I was pointing out that this looks like a prettier version of sysprof, nothing else. 2006-02-17 11:09 am stew Both being Posix operating systems mean that they both are technically superior to “other” operating systems. I don’t think Posix compliance has anything to do with how good a system is or not. Installing or removing the Posix subsystem on a Windows system doesn’t change anything about the quality of Windows. 2006-02-17 3:14 am Hakime It looks but it is not!!! Shark is much advanced, it is not only about pretty graphs, you dont seem to be a user of Shark. I know sysprof, its rather limited compared to Shark. sysprof is basically just a system profiler for running processes, Shark is a performance profiler and optmization tool. Shark allows to profile anything related to the performance of a running process (application). Shark allows you for time profiling of processes and threads, System trace, Malloc trace, Function trace, L2 data cache miss profile, time profile (all threads states), Java alloc trace, Java method trace, Java Time profile, Memory bandwidth to the controleur system, and Static analysis. Just using the System trace is huge as it allows to have a precise view of how the application behaves inside the system. Moreover as a optimization tool, Shark allows you to view the assembly code and source code of the application being profiled and the thing that makes it more a killer tool is that it can analyse your code, find where your code spends time and where in the code it should be optmized and even give you some choices of optimization technics that may work for the present case. sysprof can not do anything of that, its basinally just a system wide Linux profiler. Shark targets application developpement and optmization even though it does system profiling too. So i am sorry to say you that, but you dont know what you are talking about, coming with such useless statement like “This looks very similar to sysprof for linux with a pretty pie graph.” shows that you do not know anything about Shark, and so your are just trolling around.