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

[VM/globals] Is there any way to actually avoid them altogether? #639

Closed
github-actions bot opened this issue Aug 3, 2022 · 6 comments
Closed

[VM/globals] Is there any way to actually avoid them altogether? #639

github-actions bot opened this issue Aug 3, 2022 · 6 comments
Labels
benchmark Benchmarks and optimizations enhancement New feature or request open discussion Open discussion about features/ideas/suggestions stale todo Automatically generated issues from TODOs in the code vm Issues related to the Virtual Machine implementation

Comments

@github-actions
Copy link

github-actions bot commented Aug 3, 2022

[VM/globals] Is there any way to actually avoid them altogether?

Having all these global variables is practical, but it actually causes problems when we end up wanting to work with multiple threads. An idea would be to add them as fields in a VM object, and pass this object around. But it would still need to be properly benchmark as it would - undoubtedly - add some serious overhead.

# TODO(VM/globals) Is there any way to actually avoid them altogether?

#=======================================

# TODO(VM/globals) Is there any way to actually avoid them altogether?
#  Having all these global variables is practical, but it actually causes problems when we end up wanting to work with multiple threads. An idea would be to add them as fields in a VM object, and pass this object around. But it would still need to be properly benchmark as it would - undoubtedly - add some serious overhead.
#  labels: vm, enhancement, benchmark, open discussion

var
    # symbols
    Syms* {.global.}      : ValueDict
ndex 584dd731a..39eb13156 100644
++ b/src/vm/lib.nim

658ca7972fbf6d3830966a03cc9d6c7d9e3ea816

@github-actions github-actions bot added benchmark Benchmarks and optimizations enhancement New feature or request open discussion Open discussion about features/ideas/suggestions todo Automatically generated issues from TODOs in the code vm Issues related to the Virtual Machine implementation labels Aug 3, 2022
@stale
Copy link

stale bot commented Mar 31, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Mar 31, 2023
@stale
Copy link

stale bot commented Jul 29, 2023

Closing issue as stale.

@stale stale bot closed this as completed Jul 29, 2023
@drkameleon
Copy link
Collaborator

Re-opening as still valid

@drkameleon drkameleon reopened this Jul 31, 2023
Copy link

stale bot commented Nov 29, 2023

Closing issue as stale.

@stale stale bot closed this as completed Nov 29, 2023
@drkameleon drkameleon reopened this Nov 29, 2023
@stale stale bot removed the stale label Nov 29, 2023
Copy link

stale bot commented Jul 27, 2024

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Jul 27, 2024
Copy link

stale bot commented Nov 25, 2024

Closing issue as stale.

@stale stale bot closed this as completed Nov 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
benchmark Benchmarks and optimizations enhancement New feature or request open discussion Open discussion about features/ideas/suggestions stale todo Automatically generated issues from TODOs in the code vm Issues related to the Virtual Machine implementation
Projects
None yet
Development

No branches or pull requests

1 participant