Performance Profiler - A first attempt

Page 5/9
1 | 2 | 3 | 4 | | 6 | 7 | 8 | 9

By Manuel

Ascended (19678)

Manuel's picture

11-03-2020, 00:24

salutte: we implemented menus in the _osd_menu.tcl script. See for simple usage _quit_menu.tcl, which uses these procs. I'm not sure if these are good enough for the thing you want to do with it. The OSD stuff is (by design) not a replacement of a full GUI toolkit.
For alignment to the right, try to use -relx 1.0 and negative width (-w).

By salutte

Master (165)

salutte's picture

11-03-2020, 09:35

Thanks again Manuel! I forgot about -relx. And I'll check _osd_menu.tcl.

I'm doing my best to look for resources myself, but I'm still very new to tcl and openMSX.

By Manuel

Ascended (19678)

Manuel's picture

11-03-2020, 09:41

No problem, just keep asking when you get stuck. It's my pleasure to help you and see you do all kinds of fantastic things with it Smile

By salutte

Master (165)

salutte's picture

14-03-2020, 09:42

the profiler GUI is looking promising! But there's still much to do.

BTW, is there a way to reload a script without reloading openMSX?

By Manuel

Ascended (19678)

Manuel's picture

14-03-2020, 10:41

Use the source command on the console to (re)load a script. That's a standard Tcl command.

By salutte

Master (165)

salutte's picture

16-03-2020, 11:21

Hi all,

Quite some progress on the overhauled profiler with new UI. Still, there are myriads of bugs and a number of non impleemnted features. But scroll buttons work, favorites, timeline, etc..

Teaser:

Pushed in (dev branch):
https://github.com/MartinezTorres/openMSX_profiler

By jltursan

Prophet (2619)

jltursan's picture

16-03-2020, 11:50

Looking good so far!, keep on the good work!

By Grauw

Ascended (10821)

Grauw's picture

16-03-2020, 18:36

Salutte, I sent you my work-in-progress timeline code shown earlier. It’s not submitted to my repository yet because the way it is now it’s too wide for me to be usable, I need some collapse/expand type UI, but it may be useful to you.

p.s. I was also thinking about showing an info box when you click on a timeline section, showing you details for the individual section. Maybe an idea you can use.

By Bengalack

Paladin (802)

Bengalack's picture

16-03-2020, 18:48

Nice. Could be even nicer if the timeline support for a "pr frame"-profiling which can markers for where vblank is, where line 0 starts and where the last line ends (192/212), both automatically set according to the current refresh rate. Possible?

By salutte

Master (165)

salutte's picture

17-03-2020, 05:31

Thanks for the positive feedback!

I'll have the info box, and we can check how to implement the collapse/expand UI for the timeline. As of now, I have that when you click a "tag" you see the timeline of sections contained in that tag during the last execution of that talk (timeline is not dynamic, while the rest is).

W.r.t. VDP frames, I do have code already to support getting info from this markers. I do not know how yet how to put the info without overwhelming the UI, but I'll try!

I tried to make the concept of "frame" more generic. Right now, "frame" is just another tag. In my game, the main scroll routine cycles every 6 frames, thus a "scroll frame" is 6 interupts for me.

Lot's to do still Smile

Page 5/9
1 | 2 | 3 | 4 | | 6 | 7 | 8 | 9