Recent

Author Topic: LazProfiler (beta)  (Read 18792 times)

Alextp

  • Hero Member
  • *****
  • Posts: 848
    • UVviewsoft
Re: LazProfiler (beta)
« Reply #60 on: January 26, 2019, 12:50:41 pm »
For ATSynEdit, I need to profile all methods of ATSynEdit class and other used subclasses: TATStrings, TATCarets, TATMarkers etc etc. Some kind of work needed to specify which classes or which packages.

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #61 on: March 04, 2019, 08:40:07 pm »
Yes, at the moment packages are completely ignored, as i have to modify the package setting so that it finds LazProfilerCore unit, or i have to copy the unit to the package folder.

I am working on this. It's a good testbed for LazProfiler! I already found some bugs in conjunction with ATSynEdit in profiling code!

I'll keep you updated.
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

Alextp

  • Hero Member
  • *****
  • Posts: 848
    • UVviewsoft
Re: LazProfiler (beta)
« Reply #62 on: March 05, 2019, 07:17:00 am »
Thanks, I will wait for new version.

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #63 on: March 13, 2019, 03:46:30 pm »
I'm making progress:
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #64 on: March 19, 2019, 11:23:41 am »
New release:
LazProfiler 0.3.0.0:
- profiling of packages (only if outside of Lazarus source directory)
- renamed columns "Net" -> "Σ Net", "Gross" -> "Σ Gross"
- new columns: "% Net", "% Gross", "Ø Net", "Ø Gross"
- fixed parsing of operator functions
- fixed parsing of "START-PROFILER" and "STOP-PROFILER" if inside un-instrumented procedure/function
- Activation of LazProfiler (default is inactive)

Needs Lazarus trunk r60719 and fpc trunk (at least fixes_3_2)
« Last Edit: March 19, 2019, 11:30:53 am by Pascal »
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

Alextp

  • Hero Member
  • *****
  • Posts: 848
    • UVviewsoft
Re: LazProfiler (beta)
« Reply #65 on: March 19, 2019, 06:32:59 pm »
Very good, thanks. Will test later in component.

howardpc

  • Hero Member
  • *****
  • Posts: 3043
Re: LazProfiler (beta)
« Reply #66 on: March 19, 2019, 08:27:18 pm »
I get the error shown.
What do you think I am doing wrong?

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #67 on: March 20, 2019, 07:56:42 am »
I get the error shown.
What do you think I am doing wrong?

Nothing! My fault. The path of the temorary unit output directory is not constructed in a cross platform manner. And as i have no
possibility to test on unix i didn't notice this bug.

Please test latest commit to repository.
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

CCRDude

  • Sr. Member
  • ****
  • Posts: 491
Re: LazProfiler (beta)
« Reply #68 on: March 25, 2019, 12:25:44 pm »
Bug reports, suggestions and feature requests are welcome.

Not sure how exactly your profiler works, but one feature would be absolutely great for me: if it could output a code coverage report!

A year ago, I tried to copy the code coverage feature from phpunit. To sum it up: this can help to verify that test code covers all methods or even lines that should be tested. My approach works, but is way too slow for line-based reports.

Could LazProfiler report results by line, or is it method based only?

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #69 on: March 25, 2019, 04:05:44 pm »
Bug reports, suggestions and feature requests are welcome.

Not sure how exactly your profiler works, but one feature would be absolutely great for me: if it could output a code coverage report!

A year ago, I tried to copy the code coverage feature from phpunit. To sum it up: this can help to verify that test code covers all methods or even lines that should be tested. My approach works, but is way too slow for line-based reports.

Could LazProfiler report results by line, or is it method based only?

Sorry, LazProfiler is indeed method based.
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

Pascal

  • Hero Member
  • *****
  • Posts: 828
Re: LazProfiler (beta)
« Reply #70 on: April 01, 2019, 09:30:08 pm »
Very good, thanks. Will test later in component.

Did you manage test latest release? Satisfied?
laz trunk - fpc trunk 32bit - Windows 10 Pro x64 (1803)

K155LA3

  • Newbie
  • Posts: 4
Re: LazProfiler (beta)
« Reply #71 on: June 24, 2019, 08:56:46 pm »
After installation, the error appears: "File not open". This error occurs when the "WriteLn (...") command is executed in LazProfilerAddon.pas and LazProfilerCore.pas. After commenting out these lines, this error message no longer appears.