msd 5 Posted December 7, 2023 Hello,,  I have one strange problem with FastMM 5 and software performance. I'm using Delphi 12 Pro + FastMM 5 (build a 32- or 64-bit app). Before FastMM, I had problems with memory release. Now, when I add FastMM 5, memory management is much better.😞 BUT!!! When FastMM 5 is part of my projects, I have users (30% of them) who report me UI blocks, and they need to wait a few seconds for the UI release to be available for entering data into VCL components. Few users report app crashes, and restarting is mandatory.  I don't change or set anything in FastMM 5; everything is just as it is in the factory state from GitHUB. I need some advice for this problem and for FastMM 5 in general.  Thank you for all your help and useful tips in advance... Share this post Link to post
DelphiUdIT 176 Posted December 7, 2023 Two weeks ago FastMM5 was updated: Quote Handle a potential race condition in FastMM_DetectClassInstance: If another thread frees a block while it is being evaluated as a potential class then an A/V could occur. This indirectly affects other functionality, like FastMM_LogStateToFile. But Delphi 12 is a new release so be sure that all third parts components are updated and also that in the QP there are not such issue already posted. 1 Share this post Link to post
Tommi Prami 130 Posted December 8, 2023 14 hours ago, msd said: I'm using Delphi 12 Pro + FastMM 5 (build a 32- or 64-bit app). Â D12 has some very bad bugs/regressions. Â If you have latest D11 release available, I would go to that, with and without FastMM5 to get to the root of this. 1 Share this post Link to post
msd 5 Posted December 8, 2023 12 hours ago, DelphiUdIT said: Two weeks ago FastMM5 was updated: But Delphi 12 is a new release so be sure that all third parts components are updated and also that in the QP there are not such issue already posted. There is v5.05 on official GitHUB Channel (release date is 25.06.2023 do you have some fresh info 🙂 Share this post Link to post
msd 5 Posted December 8, 2023 40 minutes ago, Tommi Prami said: D12 has some very bad bugs/regressions.  If you have latest D11 release available, I would go to that, with and without FastMM5 to get to the root of this. And just like that, back to latest D11.3 + Updates 🙂 I'll post here my test and deploy results. Share this post Link to post
Tommi Prami 130 Posted December 8, 2023 19 minutes ago, msd said: And just like that, back to latest D11.3 + Updates 🙂 I'll post here my test and deploy results. We usually wait some time after new release, and follow Tickets people start to post. Some of the bugs/regressions now in D12 are pretty bad. and also quite weird that no one found those in beta. I ran all of our products and unit/integration tests and saw nothing when D12 came out. So those apparently needed some special code, as usually is when it is regression. But anyhow. I really hope that D12.1 comes soon, because IDE is clearly better than D11. And some good fixes also coming in D12 too. Depending on the situation and project, After we got everything compiling in D12 and made sure we kept D11 compatibility, it took couple of hours for me to get back to D11 with total D11 reinstall. But easily can see the situation that jumping back to early version can take long time, depending on the products and so on.  -Tee- 1 Share this post Link to post
Cristian Peța 103 Posted December 8, 2023 1 hour ago, msd said: There is v5.05 on official GitHUB Channel (release date is 25.06.2023 do you have some fresh info Have you checked https://github.com/pleriche/FastMM5/activity?ref=master ? Latest commit is 6 nov. "Handle a potential race condition in FastMM_DetectClassInstance: If another thread frees a block while it is being evaluated as a potential class then an A/V could occur. This indirectly affects other functionality, like FastMM_LogStateToFile." You can download sources if you don't use git to clone repository: https://github.com/pleriche/FastMM5/archive/refs/heads/master.zip 1 Share this post Link to post
Tommi Prami 130 Posted December 8, 2023 22 minutes ago, Cristian Peța said: Have you checked https://github.com/pleriche/FastMM5/activity?ref=master ? Latest commit is 6 nov. "Handle a potential race condition in FastMM_DetectClassInstance: If another thread frees a block while it is being evaluated as a potential class then an A/V could occur. This indirectly affects other functionality, like FastMM_LogStateToFile." You can download sources if you don't use git to clone repository: https://github.com/pleriche/FastMM5/archive/refs/heads/master.zip That is debug stuff, but if build that way sure can be one of the reasons...  -Tee- 1 Share this post Link to post
Cristian Peța 103 Posted December 8, 2023 If someone do have an issue that is possible solved in latest commit why not trying? I can't think that an commit is made without testing first. 1 1 Share this post Link to post
Tommi Prami 130 Posted December 8, 2023 (edited) 2 hours ago, Cristian Peța said: If someone do have an issue that is possible solved in latest commit why not trying? I can't think that an commit is made without testing first. Just pointing out that is "debug stuff" of FastMM5, usually not compiled to release-binaries, but it depends on how exe is built...  I've always used latest FastMM and never there has been proof that something was FastMM's fault. Not saying that it has always been bug free, but problems I've encountered always been at somewhere else, FastMM just had borough them into light.  -Tee- Edited December 8, 2023 by Tommi Prami 1 1 Share this post Link to post
msd 5 Posted December 9, 2023 Hello to all, Â As Tommi says, everything is working fine with Delphi 11.3 and the latest VCL release of all the components that I'm using. FastMM 5 was not a problem, and I am sorry for my misunderstanding of this great tool. Â Again, Tommi's idea is great. Wait for the new release to show its full power. Thanks to all of you again... Â 1 Share this post Link to post