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

Draft: Update core assignment algorithm in benchexec/resources.py #892

Draft
wants to merge 113 commits into
base: main
Choose a base branch
from
Draft
Changes from 2 commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
3bee91d
Assigmnment algorithm redesign
Jan 13, 2023
327d882
Added spreading of runs to assigment algorithm
Jan 16, 2023
30fe0db
Merge branch 'main' into resources-update-core-assignment
Feb 2, 2023
6ee6ef3
Reformatting
CGall42 Feb 7, 2023
bb281b0
Fixed copyright header
CGall42 Feb 7, 2023
f540424
Comments updated
CGall42 Feb 7, 2023
59c6e7d
Added root hierarchy level
CGall42 Feb 7, 2023
52fec71
Fix distribution algorithm
CGall42 Feb 7, 2023
e2c2a2f
Various improvements
CGall42 Feb 7, 2023
fcf7e34
Unittest rewrite for new core assignment
CGall42 Feb 7, 2023
ce795b6
fix imports
CGall42 Feb 7, 2023
7f06e78
Added missing return statement, accidentally deleted method
CGall42 Feb 8, 2023
869554e
Refactoring
CGall42 Feb 8, 2023
212e25d
Refactoring
CGall42 Feb 8, 2023
fab1fca
Merge branch 'main' into resources-update-core-assignment
CGall42 Feb 8, 2023
8be832e
Comments cleanup
CGall42 Feb 17, 2023
c69d56d
Siblings System Call now includes new path additionally
CGall42 Feb 20, 2023
45e5446
System Calls Added for L3caches, Groups, Dies, Clusters, Drawers, Books
CGall42 Feb 20, 2023
7257975
fixed variable names
CGall42 Feb 20, 2023
7b06ee8
added filter for slow cores
CGall42 Feb 20, 2023
8d07ad8
comments edited
CGall42 Feb 20, 2023
9a0a940
formatting and comments edited
CGall42 Feb 20, 2023
db390c2
System Calls Error Handling added & Minor fixes
CGall42 Feb 21, 2023
e2c1e9c
resources: modified distribution algorithm for tighter packing & mino…
CGall42 Feb 22, 2023
8cce256
Refactoring
CGall42 Apr 18, 2023
7eacff1
Merge branch 'main' into resources-update-core-ass
CGall42 Apr 20, 2023
ecc82cc
Style fixes
CGall42 Apr 21, 2023
943aaeb
Edited loop counter & asymmetry check, minor fixes
CGall42 Apr 25, 2023
5af1a05
Edited sorting function
CGall42 Apr 25, 2023
81e1cb8
fixed new sorting function
CGall42 May 2, 2023
12d98e6
Added fallback for missing sibling information
CGall42 May 2, 2023
de87686
Style fixes
CGall42 May 4, 2023
ec4d37f
Added frequency filter doc string & substituted sorted list with max …
CGall42 May 4, 2023
a7128fd
Edited function get_closest_nodes
CGall42 May 9, 2023
1eee161
Documentation added
CGall42 May 16, 2023
0678ac6
Refactoring & Edge Case handling
CGall42 May 26, 2023
91eb8e1
Refactoring get_sub_unit_dict
CGall42 May 30, 2023
9133f1a
Fix
CGall42 May 30, 2023
cb63077
Cleanup Whitespace & old code fragments
CGall42 May 30, 2023
199092e
More whitespace cleanup
CGall42 May 30, 2023
4dccc5c
Merge branch 'main' into resources-update-core-assignment
CGall42 May 30, 2023
d4e9cd4
Type annotations & variable rename
CGall42 May 31, 2023
c90ba59
Type notations deleted
CGall42 May 31, 2023
7fa011d
Added type hints
CGall42 Jun 1, 2023
b0a9077
Type Hint & Formating Fixes
CGall42 Jun 1, 2023
2848667
Added debug information
CGall42 Jun 1, 2023
fcbddda
More typing types
CGall42 Jun 1, 2023
fbf8f5e
Extended Core CLeanup, Deleted superfluous constructor, Added debug info
CGall42 Jun 2, 2023
25f7831
Constructor type hint fix
CGall42 Jun 2, 2023
4b5c084
Refactoring: generic mapping function added, coreSet filter for HT si…
CGall42 Jun 15, 2023
fc342a7
deletes identical hierarchy levels
CGall42 Jun 15, 2023
b9046d9
Frequency filter rework, refactoring siblings mapping, documentation …
CGall42 Jun 16, 2023
8dd1b26
Refactoring get_closest_nodes
CGall42 Jun 16, 2023
0689df5
Refactoring & added Documentation
CGall42 Jun 19, 2023
54c8071
Bug fix big hierarchies, Refactoring, docstrings
CGall42 Jun 20, 2023
b125edc
Big hierarchy added, flat hierarchy from old test, renames
CGall42 Jun 20, 2023
60a33c1
Docstrings added
CGall42 Jun 20, 2023
02bf24e
Added some previous unittests adapted to new structure
CGall42 Jun 20, 2023
6cd17ea
Comment edit
CGall42 Jun 20, 2023
a136fec
Style Fixes
CGall42 Jun 21, 2023
72106ce
Edge Case Loop Fix
CGall42 Jul 6, 2023
4ae8420
Revert unrelated change on branch
PhilippWendler Dec 13, 2023
4cf26e0
Merge branch 'main' into resources-update-core-assignment
PhilippWendler Jan 30, 2024
2f3f964
Remove type checks, Python encourages duck typing
PhilippWendler Jan 18, 2024
53702f9
Add some assertions about structure and content of hierarchy_levels
PhilippWendler Jan 29, 2024
d045bc5
Refactoring: Don't pass siblings_of_core around
PhilippWendler Jan 29, 2024
a00ede6
Simplify creation of hierarchy levels
PhilippWendler Jan 19, 2024
1e5c166
Refactoring: Move creation of VirtualCores into get_cpu_cores_per_run
PhilippWendler Jan 30, 2024
b9e1f5d
Restore tests for core allocation from main branch
PhilippWendler Jan 30, 2024
ce10795
Perform technical adjustments to old test suite for core allocation
PhilippWendler Jan 30, 2024
ef13d2a
Remove a test that is no longer relevant
PhilippWendler Jan 30, 2024
deae4ac
Temporarily disable some tests that need to be investigated or fixed
PhilippWendler Feb 14, 2024
fd58f75
Fix crash for machines with a single NUMA node in get_closest_nodes
PhilippWendler Jan 16, 2024
f657e9a
remove irrelevant code
PhilippWendler Jan 30, 2024
8b55c58
Simplify get_closest_nodes
PhilippWendler Jan 16, 2024
d0a558b
Refactoring: list comprehension is easier than temporary list and for
PhilippWendler Jan 16, 2024
64aa7e5
Remove redundant str() calls in format() arguments
PhilippWendler Jan 16, 2024
bd1f11a
Refactoring: use max() instead of sorting just to get largest element
PhilippWendler Jan 16, 2024
46a8d42
Simplifications
PhilippWendler Jan 16, 2024
490d20a
Remove debug logging statements without any understandable message
PhilippWendler Jan 18, 2024
5e299c3
Avoid duplicate log message about L3 cache in failure case
PhilippWendler Jan 18, 2024
3a46391
Use standard string format for logging, not f-strings
PhilippWendler Jan 18, 2024
316a64e
remove unused code
PhilippWendler Jan 29, 2024
b952ece
Refactor get_generic_mapping function
PhilippWendler Jan 16, 2024
70ab415
Improve frequency_filter function
PhilippWendler Jan 16, 2024
665bf2c
Avoid uses of defaultdict in resources.py
PhilippWendler Jan 18, 2024
81f2b35
Refactoring: Remove allCpus parameter from check_distribution_feasibi…
PhilippWendler Jan 30, 2024
289b780
remove unused datastructure
PhilippWendler Jan 30, 2024
52afd65
Fix broken check for missing HT sibling cores
PhilippWendler Jan 30, 2024
9b5ad74
Restructure reading of siblings information
PhilippWendler Jan 30, 2024
4a64142
Support arbitrary many cache hierarchy levels for core allocation
PhilippWendler Jan 30, 2024
a949fda
Refactor get_sub_unit_dict
PhilippWendler Feb 9, 2024
12fcb40
small fixes for CI
PhilippWendler Feb 14, 2024
2404d62
Merge branch 'main' into resources-update-core-assignment
PhilippWendler Aug 6, 2024
2bc4d20
Re-add logging config in tests to make tests working again
PhilippWendler Aug 6, 2024
9636ee0
copied new tests, unchanged, to have as much tests as possible
schroeding Sep 20, 2024
2cc163b
added more flexible way to to generate layer data for tests
schroeding Sep 22, 2024
d0d01cd
remove redundant sorting and removal of duplicate layers
schroeding Sep 30, 2024
cab9c90
replace layer generation code
schroeding Oct 1, 2024
4073a2b
fix unnecessary import
schroeding Oct 6, 2024
41d7a0d
preparations to remove fixed xxxCoresPerRun methods
schroeding Nov 26, 2024
dd06fcb
changed calls to assertValid to mainAssertValid
schroeding Nov 26, 2024
6a0ad66
Revert "changed calls to assertValid to mainAssertValid"
schroeding Nov 26, 2024
0b5c853
directly derivate TestCpuCoresPerRun_singleCPU_HT from TestCpuCoresPe…
schroeding Nov 27, 2024
c02635d
add decorator to dynamically add test cases for any amount of CPUs used
schroeding Nov 30, 2024
ff3f469
added decorator based assert statements to first batch of tests
schroeding Nov 30, 2024
a593279
fixed bug in preexisting testsuite
schroeding Dec 1, 2024
c820ccf
uncommented test, as it is returning the correct result
schroeding Dec 1, 2024
67c7df8
added remaining decorators for expected assignment
schroeding Dec 1, 2024
0fcb39b
removed redundant testing logic
schroeding Dec 1, 2024
93199de
Merge branch 'main' into resources-update-core-assignment
schroeding Dec 1, 2024
9b5b96f
fixed wrong type hint
schroeding Dec 1, 2024
e7c3b0a
remove typehint which is incompatible with python < 3.10
schroeding Dec 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading