| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Profiler support in the VICE monitor
I just committed an initial patch that adds profiler support to the monitor. This might be interesting for those who are working on their X releases :)
grab the next build (r43769) from here when its done. |
|
| |
DanPhillips
Registered: Jan 2003 Posts: 30 |
Quote: I just committed an initial patch that adds profiler support to the monitor. This might be interesting for those who are working on their X releases :)
grab the next build (r43769) from here when its done.
Nice,
How do we use it? :) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Well, look at the documentation :) Or just check "help prof" in the monitor :)
Edit: And please post bugs! There will be some, i guess :) |
| |
DanPhillips
Registered: Jan 2003 Posts: 30 |
Quote: Well, look at the documentation :) Or just check "help prof" in the monitor :)
Edit: And please post bugs! There will be some, i guess :)
Feature request,
take into account if a cart is banked in and the bank if the functions are running from cart?
Very nice though!
Much appreciated :) |
| |
Martin Piper
Registered: Nov 2007 Posts: 634 |
Alt-M doesn't display the monitor?
...
OK WTF? No native menus or shortcut keys or monitor windows at all? |
| |
Grue
Registered: Dec 2001 Posts: 146 |
they broke old shortcuts, try alt+h instead |
| |
tlr
Registered: Sep 2003 Posts: 1714 |
anomaly: the default output of 'prof flat' has trailing spaces that make all lines wrap with the default monitor window size (1 or 2 chars too long).
Ubuntu 20.04, gtk |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Quote:they broke old shortcuts
Dinosaurs can always use gtk3-winvice-legacy.vhk
Quote:take into account if a cart is banked in and the bank if the functions are running from cart?
I'll put this on the list - however, right now it cant work - the biggest problem is that the monitor right now has no infrastructre to map cartridge banks at all (just a crude way to tell "cartridge" or "not cartridge"). The later "should" work (but actually doesn't - there seem to be problems with RAM vs ROM in general)
Edit: the list is here |
| |
Quiss
Registered: Nov 2016 Posts: 37 |
Quote:
I just committed an initial patch that adds profiler support to the monitor. This might be interesting for those who are working on their X releases :)
Just tried it out. Neat feature! Very useful.
Only thing I'm missing is branch taken / not taken statistics. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Thats a good idea indeed! |
| |
Martin Piper
Registered: Nov 2007 Posts: 634 |
The GTK3VICE-3.7.1-win64-r43776 build is much more user friendly. Once I remap the shortcuts :) |
| |
Oswald
Registered: Apr 2002 Posts: 5017 |
for fun they should remap alt-w too :) I'm using vice 2.4, its a peaceful life. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Quote: The GTK3VICE-3.7.1-win64-r43776 build is much more user friendly. Once I remap the shortcuts :)
Dinosaurs can always use gtk3-winvice-legacy.vhk |
| |
Martin Piper
Registered: Nov 2007 Posts: 634 |
How about profiling information for disk drives and super CPU and Z80?
Knowing if code is executing from RAM or ROM would help, also it would be useful if it logged the cartridge bank byte(s). Larger carts can have two bank bytes. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
yes, all of this is on the TODO list
RAM vs ROM should already be logged though (although its seems to not work as intended, see the ticket |
| |
DanPhillips
Registered: Jan 2003 Posts: 30 |
Could the gathered data be outputted to a file?
Could it be segmented per "frame" so we can see spikes?
Have you used PIX? :D |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Can't really answer any of that :=) What is "PIX"? :)
That said, i think it makes sense to focus on the core features right now, and then make them available via the remote monitor protocol - and then an external program should be able to visualize the data in whatever fancy way you want :) |
| |
DanPhillips
Registered: Jan 2003 Posts: 30 |
https://devblogs.microsoft.com/pix/introduction/
Its a bit like Razor for PS4/5.
On XSX/XSS it's a really nice profiling and visualization tool :) |
| |
Bitbreaker
Registered: Oct 2002 Posts: 500 |
What would be very awesome about profiling is the possibility to detect dead code and how often (percentage) a branch is taken for optimization reasons :-) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11116 |
Quote:On XSX/XSS it's a really nice profiling and visualization tool :)
OK, as said, all those tools are basically just doing their magic on a set of relatively trivial data - so once the data comes out of vice "somehow", someone can make the interfaces or conversion tools to use all the fancy profile tools.
Quote:What would be very awesome about profiling is the possibility to detect dead code and how often (percentage) a branch is taken for optimization reasons :-)
also already on the list :) |
| |
soci
Registered: Sep 2003 Posts: 473 |
Wow profiling is a thing now :) Used that in 2016 already:
https://singularcrew.hu/temp/2016-09-04-160615_3840x1600_scrot...
But the code needs to be structured properly to get useful results. Used it also for boring stuff like figuring out why cfsfsck (IDEDOS filesystem consistency checker) takes so long and could make it much faster. |
| |
Brush
Registered: Apr 2002 Posts: 21 |
@soci this looks like valgrind gui? How did you manage to generate compatible profiling data for 6502? Would you care to share? |