This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

DS-5 OR RVDS, which one to use for profiling code

Note: This was originally posted on 13th June 2012 at http://forums.arm.com

I used RVDS in the past and it was great for profiling test code. I was able to see how many cycles each instruction takes, data hazards etc. I was very satisfied with it. BUT, RVDS was pretty buggy in that regard: there was no way to profile code that uses unaligned memory access (it just hangs, there was no reply from arm at all if there was a way to fix it), and profiling for neon code was non-existent (every neon instruction takes 1 cycle in RVDS profiler).

I tried to use DS5 trial and CE version and wasn't even able to figure out how to even do any profiling at all. Debugging ... I must be dreaming, it was world of pain to get anything working and I think it wasn't working properly (followed all kinds of guides, pinned at the top of the forum for example). It's nothing even close to experience that I had with RVDS: I had profiling results within 20 minutes after I registered for trial. If it matters, even for android my primary dev environment is VS2009 and I debug native code on windows mobile devices if I need to, all that clunky eclipse feels like ... **censored** :)


THE QUESTION:

should I keep on wasting time trying to get DS5 profiling working (I would like to be able to profile on emulator, or on real device), Or its Streamline will be useless for me: does it show the same detail as profiler that comes with RVDS or not? For some reason I think that Streamline is more like profiler that comes with XCode and iPhone sdk: it shows sampling usage of the full app but not opcode level profiling info like RVDS (e.g. I could see each instruction and how much cycles it took and any register waits if there were any).

If DS5 isn't good for that, maybe somebody can recommend me alternative solution? My main target is the android phone, although I build my code almost for all devices that run on ARM.
Basically, what's the best tool for profiling arm code? I would prefer some RTSMs so I could profile for different CPUs (like with RVDS), but if there is no good alternative I could as well buy any development board or anything that could provide me opcode level profiling info. Please advise anybody! Thanks

Ideally, I would like something similar to RVDS but fully working: 1) unaligned memory access fixed, preferably running some kind of OS so that 2) I could use files that I use for testing (I had 250MB input files that I passed for my test runs and in RVDS I had to embed all that data to final executable, which was really annoying compared to all platforms where I run my code and where I was able to use files one way or the other). 3) Normal neon profiling info, and not that 1cpi nonsense that RVDS profiler shows. Something similar to ARM Cortex-A8 cycle counter online tool
Parents
  • Note: This was originally posted on 13th June 2012 at http://forums.arm.com

    On top of that I'd like to add... maybe I'm complete retard, but I find that "Setting up an Android target from "ARM DS-5 Using ARM Streamline" is the dumbest ever guide. It reminds of my friends that call for help and then they tell me what they see on on their screen and talk to me as if I had their screen in front of my eyes.
    In the kernel configuration menu, use the arrow keys to navigate to the required submenu and press Enter


    WTF IS THAT BS?! Seriously, I'm trying to press arrow keys, but all I see is the web page moving. Where the hell am I supposed to press arrow keys??? That rediculous mentioning of the location of gator source... WTF IS THAT??? In older version it mentioned installdir/arm... now it's something else, but I still don't get, where the hell it's supposed to be! Is that instal dir of DS-5, right? What about ds5-ce then!
    To be able to use Streamline on any of devices on my desk (I have like 50 phones lying around), do I need to reflash phones and build android myself???!?!? Is that what that guide says??...
    I've never built android or any kernel modules, but it's strange to assume that somebody who simply wants to use profiler needs to only rebuild kernel and no freaking info, like it's a helloworld task that everybody knows by heart... No wonder there is no singly clue on the web how to set it up and use it and get any results from it... At least I'm not able to find anything at all!

    I'm very sorry, perhaps that guide missed to mention that mind reading class was a prerequisite.
Reply
  • Note: This was originally posted on 13th June 2012 at http://forums.arm.com

    On top of that I'd like to add... maybe I'm complete retard, but I find that "Setting up an Android target from "ARM DS-5 Using ARM Streamline" is the dumbest ever guide. It reminds of my friends that call for help and then they tell me what they see on on their screen and talk to me as if I had their screen in front of my eyes.
    In the kernel configuration menu, use the arrow keys to navigate to the required submenu and press Enter


    WTF IS THAT BS?! Seriously, I'm trying to press arrow keys, but all I see is the web page moving. Where the hell am I supposed to press arrow keys??? That rediculous mentioning of the location of gator source... WTF IS THAT??? In older version it mentioned installdir/arm... now it's something else, but I still don't get, where the hell it's supposed to be! Is that instal dir of DS-5, right? What about ds5-ce then!
    To be able to use Streamline on any of devices on my desk (I have like 50 phones lying around), do I need to reflash phones and build android myself???!?!? Is that what that guide says??...
    I've never built android or any kernel modules, but it's strange to assume that somebody who simply wants to use profiler needs to only rebuild kernel and no freaking info, like it's a helloworld task that everybody knows by heart... No wonder there is no singly clue on the web how to set it up and use it and get any results from it... At least I'm not able to find anything at all!

    I'm very sorry, perhaps that guide missed to mention that mind reading class was a prerequisite.
Children
No data