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

[Local GC] GCToOSInterface TODO: CPUGroupInfo and NumaNodeInfo #8054

Closed
swgillespie opened this issue May 10, 2017 · 6 comments
Closed

[Local GC] GCToOSInterface TODO: CPUGroupInfo and NumaNodeInfo #8054

swgillespie opened this issue May 10, 2017 · 6 comments
Assignees
Labels
area-GC-coreclr backlog-cleanup-candidate An inactive issue that has been marked for automated closure. no-recent-activity
Milestone

Comments

@swgillespie
Copy link
Contributor

  "CPUGroupInfo::CanEnableGCCPUGroups()", referenced from:
      SVR::gc_heap::create_gc_thread() in gcsvr.cpp.o
      SVR::GCHeap::Initialize() in gcsvr.cpp.o
  "CPUGroupInfo::GetGroupForProcessor(unsigned short, unsigned short*, unsigned short*)", referenced from:
      SVR::set_thread_group_affinity_for_heap(int, GCThreadAffinity*) in gcsvr.cpp.o
  "CPUGroupInfo::GetNumActiveProcessors()", referenced from:
      SVR::GCHeap::Initialize() in gcsvr.cpp.o
  "NumaNodeInfo::CanEnableGCNumaAware()", referenced from:
      SVR::set_thread_group_affinity_for_heap(int, GCThreadAffinity*) in gcsvr.cpp.o
      SVR::set_thread_affinity_mask_for_heap(int, GCThreadAffinity*) in gcsvr.cpp.o
      SVR::heap_select::init(int) in gcsvr.cpp.o
  "NumaNodeInfo::GetNumaProcessorNodeEx(_PROCESSOR_NUMBER*, unsigned short*)", referenced from:
      SVR::set_thread_group_affinity_for_heap(int, GCThreadAffinity*) in gcsvr.cpp.o
      SVR::set_thread_affinity_mask_for_heap(int, GCThreadAffinity*) in gcsvr.cpp.o

These will likely need to go into GCToOSInterface. Related to dotnet/coreclr#10938.

@janvorli
Copy link
Member

@swgillespie this is where the experimental refactoring that I've made and shown you before could be used.
Here is the commit again for your reference: janvorli/coreclr@19bad47

@swgillespie
Copy link
Contributor Author

@janvorli Great! Thank you!

@swgillespie
Copy link
Contributor Author

Triage:

This issue does not require changes to the GC/EE interface but is desirable for performance on very high-scale machines. @janvorli 's changeset is still an excellent starting point.

Ultimately, as Jan's changeset indicates, NUMA and CPU group awareness should be implemented in GCToOSInterface.

@swgillespie swgillespie changed the title [Local GC] Undefined symbols when building standalone: CPUGroupInfo and NumaNodeInfo [Local GC] GCToOSInterface TODO: CPUGroupInfo and NumaNodeInfo Nov 7, 2017
@swgillespie swgillespie self-assigned this Nov 7, 2017
@swgillespie
Copy link
Contributor Author

Moving out to Future, this doesn't require any breaking changes to the GC/EE interface.

@msftgits msftgits transferred this issue from dotnet/coreclr Jan 31, 2020
@msftgits msftgits added this to the Future milestone Jan 31, 2020
@ghost
Copy link

ghost commented Oct 27, 2022

Due to lack of recent activity, this issue has been marked as a candidate for backlog cleanup. It will be closed if no further activity occurs within 14 more days. Any new comment (by anyone, not necessarily the author) will undo this process.

This process is part of our issue cleanup automation.

@ghost ghost added backlog-cleanup-candidate An inactive issue that has been marked for automated closure. no-recent-activity labels Oct 27, 2022
@ghost
Copy link

ghost commented Nov 10, 2022

This issue will now be closed since it had been marked no-recent-activity but received no further activity in the past 14 days. It is still possible to reopen or comment on the issue, but please note that the issue will be locked if it remains inactive for another 30 days.

@ghost ghost closed this as completed Nov 10, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Dec 10, 2022
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-GC-coreclr backlog-cleanup-candidate An inactive issue that has been marked for automated closure. no-recent-activity
Projects
None yet
Development

No branches or pull requests

3 participants