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

Redo memory strategy based of single-address space reserve mapping for the process #43

Open
Ed94 opened this issue Sep 20, 2023 · 0 comments
Labels
performance Anything related to bad performance issue or a beneficial optimization

Comments

@Ed94
Copy link
Owner

Ed94 commented Sep 20, 2023

MS Blog

This came about from doing Handmade Hero along with studying other content from the community.

Going to change the allocators to use a single address space, I'll reserve a mapping for with a max limit. The limit will be set via the gencpp::init along with the initial commit space. Default will be 4gb reserve and 1 gb commit.

The program will share a single address space for everything based on this commit so I'll offset the different general use cases for memory by that:

  • Persistent ( Globals & String Cache )
  • Code Transients ( AST & Parser Token Pools )
  • String Transients ( dynamic strings )
  • File Transients ( Bulk content read / write )

I'll hold off on this though until we have the dependent data allocation strategies down pact with regular heap allocation.

@Ed94 Ed94 added the performance Anything related to bad performance issue or a beneficial optimization label Sep 20, 2023
@Ed94 Ed94 added this to the Backend Design Complete milestone Sep 20, 2023
@Ed94 Ed94 self-assigned this Sep 25, 2023
@Ed94 Ed94 moved this to Todo in gencpp roadmap Sep 25, 2023
@Ed94 Ed94 removed their assignment Nov 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Anything related to bad performance issue or a beneficial optimization
Projects
Status: Todo
Development

No branches or pull requests

1 participant