You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am really interested in the V language, and I know their compiler supports the flag -autofree which is able to perform automatic memory management in order to significantly reduce memory leaks. It is still in development as a feature, but seems to work just fine for the majority of code. Since it's not enabled by default, or in this repo, perhaps a footnote for V's memory values should be added since the current numbers include memory leaks, without any freeing of memory (except for in the base64 benchmark it appears). Alternatively, -autofree could be tentatively enabled, but if any build or runtime errors occur, this could be reverted.
If -autofree is ever enabled, the manual freeing of memory in test.v should probably be removed since it's taken care of by the compiler.
If there are some leaks, then I'd prefer them to be fixed. I don't have any preferences regarding automatic vs manual though, so if you're willing to address it, that would be greatly appreciated.
I locally ran the benchmark suite with just V files and... without -autofree it works perfectly, but with it... for some reason it doesn't send any info over tcp, verified with netcat, so it won't work with your setup. I'm going to ask on the discord and probably file an issue about this. But until then, it's best to keep everything as-is. Idiomatic V doesn't call for unsafe blocks to manually free memory. -autofree should just work eventually, and will be the preferred way to think about memory management.
Activity
nuald commentedon Jan 15, 2022
If there are some leaks, then I'd prefer them to be fixed. I don't have any preferences regarding automatic vs manual though, so if you're willing to address it, that would be greatly appreciated.
OpenSourceAnarchist commentedon Jan 16, 2022
I locally ran the benchmark suite with just V files and... without
-autofreeit works perfectly, but with it... for some reason it doesn't send any info over tcp, verified withnetcat, so it won't work with your setup. I'm going to ask on the discord and probably file an issue about this. But until then, it's best to keep everything as-is. Idiomatic V doesn't call forunsafeblocks to manually free memory.-autofreeshould just work eventually, and will be the preferred way to think about memory management.