Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feedback for macOS release 2021.06.22.develop.universal #89

Open
aaron-kylm opened this issue Jun 23, 2021 · 11 comments
Open

feedback for macOS release 2021.06.22.develop.universal #89

aaron-kylm opened this issue Jun 23, 2021 · 11 comments

Comments

@aaron-kylm
Copy link

I have this loaded on my Intel and my M1.

The intel machine pingnoo opens and seems to run as expected. Will do further testing later. But it started and is still running.

The M1 machine I received the below error on opening.

Termination Reason: DYLD, [0x2] Wrong architecture

2021-06-23--0754_m1_pingnoo_error.txt

Screen Shot 2021-06-23 at 07 53 33

@fizzyade
Copy link
Member

urgh, not again. Something is wrong with the CI system, and I don't know why it's doing this, it's not building the universal binary version properly. I'll go take another look. It does work on Intel for the moment.

@fizzyade
Copy link
Member

third time luck @aaron-kylm .

Please download it again, it should work now. I am very confused why the automatic build is not generating the correct binary, all I did was copy and paste the commands from there into a terminal and out popped the fully signed and notarized binary + DMG.

I have downloaded the DMG from github on an Intel and an M1 machine and confirmed that it runs natively on both, so it's a correct universal binary and it doesn't crash on startup!

@aaron-kylm
Copy link
Author

downloaded -> installed -> it's currently running on a M1.. I'll let it run today and play with it more later tonight.

Thank you

@fizzyade
Copy link
Member

Be aware that I may have broken sutff/created memory leaks with the substantial changes I made of the past week or so.

I tried to do as much testing as I could, but something I've learned from many years developing commercial software is that end users use the software in a different way to the developers. You can pretty much guarantee that they'll break it in a very short amount of time.

@fizzyade
Copy link
Member

@aaron-kylm Did you manage to run any tests? Any feedback, horrific crashes, glitches or weirdness?

I'm just adding the generating of outputs now, hopefully you will be able to directly generate a PDF or an image containing the current "view" that you are looking at.

@aaron-kylm
Copy link
Author

Hi my apologies, I wanted to let this run for a few days and check it

Here are some observations, all of my testing is done on my M1 except testing functionality on my Intel MBP. I’m using Activity Monitor and BpyTOP to monitor memory.

  • Opened and and ran on both M1 and Intel Macs. From here on out it’s all testing on M1.
  • Opened multiple tabs ( destinations ) and I could see the memory grow. But closing them I did not see the memory release. It could have later on, but I waited 4 or 5 minutes watching and it didn’t look like it was let go. If I reopened more tabs I could see the memory increase again, and again not released.
  • Pingnoo was running all weekend on the M1 with one destination ( 8.8.8.8 ).
    • I must have had some network issues over the weekend cause all but my internal and first ping out have a max value of 4703. And the colors are all red…lol
    • I also opened two more favorites and then closed them. After closing the tabs the drop down menu on the left ( to open favorites ) did not appear when clicked.
    • Current memory used ( according to Activity monitor ) is 944.0 MB . And it seems to continue to increase.

@fizzyade
Copy link
Member

fizzyade commented Jun 29, 2021

Hi my apologies, I wanted to let this run for a few days and check it

Here are some observations, all of my testing is done on my M1 except testing functionality on my Intel MBP. I’m using Activity Monitor and BpyTOP to monitor memory.

  • Opened and and ran on both M1 and Intel Macs. From here on out it’s all testing on M1.
  • Opened multiple tabs ( destinations ) and I could see the memory grow. But closing them I did not see the memory release. It could have later on, but I waited 4 or 5 minutes watching and it didn’t look like it was let go. If I reopened more tabs I could see the memory increase again, and again not released.

Ok, I'm aware of memory usage, but it's not something I've gone back to look at yet...I guess this is the poke with a sharp stick to do that...

I'll have to do some profiling and see where the memory is going, I know it's not a "leak leak" as I do test the code regularly with a memory analysis tool, so whatever it is in consumption during the apps lifetime. I'm going to say that it's almost certainly the graphing library consuming ram for each point, but I will have to go look in more detail.

The fact you've mentioned it probably means that it's due for investigation, if things don't get mentioned then I kind of sweep them to the todo "sometime later pile".

  • Pingnoo was running all weekend on the M1 with one destination ( 8.8.8.8 ).

    • I must have had some network issues over the weekend cause all but my internal and first ping out have a max value of 4703. And the colors are all red…lol

I'm guessing you didn't take a screenshot? I wonder what caused that. I may have to stick in a debug option to log things like this that are hard to otherwise debug.

  • I also opened two more favorites and then closed them. After closing the tabs the drop down menu on the left ( to open favorites ) did not appear when clicked.

Not sure about that, did it go back to working after a restart? I'll take a look at the code around that and see if I can spot anything obvious.

  • Current memory used ( according to Activity monitor ) is 944.0 MB . And it seems to continue to increase.

Yeah.....

I really appreciate you putting this through its paces and reporting back your findings. I think in the grand scale of things, the result here from running it over an extended period of time is pretty good, but room for improvement.

I have completed the work on the ribbon bar, so now I can go ahead and add the functionality for creating outputs (either direct outputs or via the clipboard) which will make the tool a lot more useful, rather than having to rely on print screen.

@fizzyade
Copy link
Member

fizzyade commented Jul 1, 2021

I just remembered I left it running on windows without it adding points to the graph. The memory usage when I started it was 92MB...when I just went and checked, it was 84MB.

So it is the graphs consuming memory like I thought.

I will have a look at the library to see how I can manage this better. It has been in the back of my mind to produce my own graphing for it as my usage is much simpler than the library provides, writing my own would allow me to have control over the nmeory usage including memory mapped files and/or sqlite.

@aaron-kylm
Copy link
Author

aaron-kylm commented Jul 2, 2021

got a screenshot of the Max value @ 4703

Screen Shot 2021-07-01 at 21 00 52

@fizzyade
Copy link
Member

fizzyade commented Jul 4, 2021

@aaron-kylm sorry, I did see this, but I've been particularly unwell for the past week (I have ongoing serious health problems) so didn't respond.

Is this a wired or wireless machine? Since my removal of std::chrono, I have seen a couple of occasions where the time has given something very janky, but that's normally in the range of millions of milliseconds rather than what you're showing here, which is a round trip time of 4.7 seconds.

4.7 seconds could be totally valid, something could have happened with your computer or network or your ISP, because it's a "reasonable" number I'm not even sure how we could figure out what actually happened.

What is probably a better idea, would be for me to display that information clipped to the viewport (like the actual graphs do) so any janky results like this (whether they're real or not) would not affect the view for very long.

I think this is probably a good idea and something it should do, does this sound like a reasonable idea to you?

I'm still pondering what to do with the graphs, clearly running a trace over a long period of time is something that's going to be a problem with the amount of memory that the graphing library uses, the only viable off the shelf option is QtCharts (which I can use as this is a GPL application), but I've had a scan through that as well and it doesn't look like it will fare much better, what I really need is a graph library that can use either a database (along with the required optimisations to reduce queries) or some form of memory mapping.

Boy these decisions you make right at the start can end up kicking you in the backside at a later date!

Once again, I really appreciate your feedback & suggestions, these are what drive it forward from a user perspective rather than from my point of view as a developer. I wrote the application for my own needs, so that was the primary driving force at the beginning, but having people like yourself give feedback is a massive help, otherwise, I will just keep adding features that I think are great but aren't necessarily the things that end users would want.

@aaron-kylm
Copy link
Author

I hope you feel better and back to normal soon.

I'm sure there was something in my network that was giving me the results per the screen shot. And as I was messing around "organizing my home office" the wired connection was removed and I forgot to plug back in so it was on WiFi. I think keeping things consistent graph and col. info is a great idea.

Please get well soon...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants