Open main menu

CDOT Wiki β

Changes

GPU621/Pragmatic

2,309 bytes added, 03:13, 17 November 2016
Notes
To monitor live changes (To refresh ''Memory'' window automatically) in ''Memory'' window, right click in the ''Memory'' window and select ''Reevaluate Automatically''.
 
 
'''Entry on: November 16th 2016 by Oleksandr Zhurbenko'''
 
 
===Using Parallel Stacks Window===
 
'''Parralel Stacks''' window consists of 2 main views: '''Threads View''' and '''Tasks View'''.
 
'''Threads View''' shows the call stack information for all the threads in your application in a very convenient form, and '''Tasks View''' shows call stacks of [https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx System.Threading.Tasks.Task] objects.
 
While you can get a lot of information from MSDN, Daniel Moth, one of the Microsoft's evangelists published a great [https://channel9.msdn.com/Blogs/DanielMoth/Parallel-Stacks--new-Visual-Studio-2010-debugger-window video] on Parallel Stacks feature. I would highly recommend watching it.
 
To enable the Parallel Stacks window while debugging you should go to '''Debug''' -> '''Windows''' -> '''Parallel Stacks'''
 
'''Parallel Stacks''' allows you to follow the path of the each thread to optimize or debug your parallel program. Also, if you use it together with the '''Threads''' window - you can flag some threads in the '''Threads''' window and only those flagged threads will be displayed in the '''Parallel Stacks''' window.
 
Most of the additional options of the '''Parallel Stacks''' window is available after you right click on one of the modules.
 
Here are the features which are worth mentioning:
 
* Flag/Unflag threads which can be useful if you don't keep '''Threads''' window open.
* Freeze/Thaw - freezes and thaws a current item accordingly.
* Go to Source Code - navigates you to the Source Code responsible for the selected item/function.
* Switch to Frame - if you have 2 threads in one module, for example, you can switch between them to see a specific context.
* Go to Disassembly - navigates you to the Assembly code responsible for the chosen item.
* Hexadecimal Display - toggles between decimal and Hexadecimal displays.
 
Last but not least, if you hover over a function/method - you can see some information about it. To choose what you want to be displayed - you are supposed to right-click anywhere in the '''Parallel Stacks''' window and choose your options, which allow you to:
 
* Show Module Names
* Show Parameter Types
* Show Parameter Names
* Show Parameter Values
* Show Line Numbers
* Show Byte Offsets