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
High memory used in data loads not immediately returned to OS #3002
Comments
@SoftTools59654: Yes, the phenomenon you describe is indeed related to Zed, and more specifically the Go programming language in which Zed is written, and the same effect appears in other languages also. There's many articles/discussions online on this topic, with this being one. To quantify, in our internal Autoperf system that we use to track performance and resource usage with various operations, we've seen loads of large data sets consume 4-7 GB of system memory at peak, whereas the various query workloads consume 100-300 MB of system memory at peak, though this may certainly go higher for other query workloads (e.g., particular aggregations). In terms of how to mitigate these effects, one short term workaround would be to exit and relaunch Zui after a large data load since that would cause the As for long-term fixes, we have plans in the future to do some wider research on how we might unify memory allocations in Zed (brimdata/zed#4025) and maybe at that time we'll come across an approach that could allow the release of memory to the OS. In advance of this, as a short-term workaround we might consider an approach of spawning a separate/temporary A question for @SoftTools59654 or anyone else who happens to find this issue: Could you help understand the impact of this effect in your environment? If you primarily wanted an explanation for the behavior, I hope the text above is sufficient. If the effect is limiting your ability to use Zui at all, it would be helpful to understand the resource constraints and impact in your environment. |
@SoftTools59654: After speaking with our developers I ran some more tests and I can see that lots of memory absolutely can be returned to the OS, but it's dependent on use. In the attached video below, I'm using Zui v1.6.0 and loading these three JSON files that are ~1.9 GB in size after
The video is "sped up" by about 5x to reduce its size. As you can see, when the files are finished loading, the Windows.mp4So you can expect the memory usage will often rise with certain heavy operations (such as the load that you saw, or some other memory-heavy operations like I'd still be curious to hear more on if these behaviors still provide some unreasonable burden in your deployment environment, though. I'll hold this open and see what answer you might have. |
Of course, this problem is probably related to zed itself
When a large data file is imported, a lot of RAM is consumed and after the data import is finished
Zed still occupies the same amount of RAM in memory while there are no queries or requests or imports. which causes high RAM consumption in Zui
Windows operating system
While after the import is finished, it can free up the used RAM space
The text was updated successfully, but these errors were encountered: