-
Notifications
You must be signed in to change notification settings - Fork 121
[Don't review yet, reworking] B&B CPU determinism #798
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
Open
aliceb-nv
wants to merge
234
commits into
NVIDIA:release/26.02
Choose a base branch
from
aliceb-nv:determinism
base: release/26.02
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
234 commits
Select commit
Hold shift + click to select a range
8cec498
bitwise determinism FJ progress
aliceb-nv a559d79
FJ determinism for non balanced codepath
aliceb-nv 3269d87
deterministic tests for more parts of the solver
aliceb-nv 20277f2
random spin kernel to perturb determinism tests
aliceb-nv 55126d9
Fix uninitialized multiprobe buffer bug in constraint prop
aliceb-nv 58d9a42
local search determinism tests
aliceb-nv 6b9324c
tmp, fixing bug in constraint prop randomness
aliceb-nv db75bd6
fixed test bug
aliceb-nv 7315ab8
determinism progress w/ recombiners
aliceb-nv 24eb4ac
Merge branch 'main' into determinism
aliceb-nv 8cbc37a
add determinism setting
aliceb-nv 7ee2c49
restore determinism tests functionality
aliceb-nv d5677fe
adding cupti
aliceb-nv 429c492
Adding support for work unit inference w/ xgboost
aliceb-nv f6e1370
log more FJ features
aliceb-nv f02837a
remove nvperf dep
aliceb-nv 773dbd4
no cupti
aliceb-nv 327fcec
added regression scripts
aliceb-nv c9cae3c
switch to using tl2cgen
aliceb-nv 575520f
Merge branch 'main' into determinism
aliceb-nv 017c4d5
merge w/ main, fix non-deterministic codepath
aliceb-nv 8cb04ec
data collection
aliceb-nv f5f2726
script changes
aliceb-nv c4d3fde
bump
aliceb-nv 6780893
bump
aliceb-nv 7474ff0
work unit timers
aliceb-nv c6e9d15
linear estimation of PDLP work units
aliceb-nv c24f6ef
more work unit timer stuff
aliceb-nv c70bc1b
further work unit timer progress for gpu heuristics
aliceb-nv 4e0f79a
fix determinism issue in bounds repair, further work limit progress
aliceb-nv bcadb92
bump 1
aliceb-nv 66288f8
bump2
aliceb-nv 8e19de8
fix FJ indeterminism
aliceb-nv 5eacbb8
bump 1
aliceb-nv b96a784
bump 2
aliceb-nv ccc64a2
fix bounds repair indeterminism
aliceb-nv 01afc9d
bump1
aliceb-nv 6ba4905
bump2
aliceb-nv 3e6d081
restore FJ moves
aliceb-nv 38df1ec
bump1
aliceb-nv c713dbc
bump2
aliceb-nv 3b0d116
recombiners record work
aliceb-nv 380bb1d
Merge branch 'main' into determinism
aliceb-nv 7f81da1
bump1
aliceb-nv 2726d23
bump2
aliceb-nv 7ea0f1d
fix brute force rounding indeterminism
aliceb-nv 4e74f15
bump
aliceb-nv 709f281
restore fj
aliceb-nv 41198e2
bump1
aliceb-nv d98e083
more logging
aliceb-nv 786ae8a
bump1
aliceb-nv 2fade1d
bump2
aliceb-nv c89e2c9
fix missing grid sync
aliceb-nv cbfd34b
bump1
aliceb-nv ea5e1bd
bump2
aliceb-nv 8c53c75
restore load balancing
aliceb-nv c6a1037
bump 1
aliceb-nv 09a484a
remove unecessary grid sync
aliceb-nv f55e648
bump1
aliceb-nv 554d24c
bump2
aliceb-nv db73e00
FJCPU in deterministic mode
aliceb-nv 0b8b6e1
bump1
aliceb-nv 122bfbc
bump2
aliceb-nv 45ebd57
fix oversight
aliceb-nv a209096
bump1
aliceb-nv 718f3e7
bump2
aliceb-nv 1df9313
logger
aliceb-nv b45982e
fix cpufj
aliceb-nv d272180
bump1
aliceb-nv 0987b5c
bump2
aliceb-nv f378246
tentative LB determinism fix
aliceb-nv 4b77a59
extra logging CPUFJ, PAPI
aliceb-nv bcea60d
branch n bound nvtx ranges
aliceb-nv d7ff462
more cpufj logging
aliceb-nv 37ca39e
BnB features logging
aliceb-nv 5c9e59a
add memory instrumentation wrappers
aliceb-nv 22c95a7
Merge branch 'main' into determinism
aliceb-nv 0fc30c5
don't clog w/ improvements
aliceb-nv 8bd70e3
fixed iter count
aliceb-nv 7bcf3ba
bugfix
aliceb-nv 4bfb96f
more memops logging
aliceb-nv f1afa59
fewer
aliceb-nv cd2595e
log-transform for regressor
aliceb-nv 6a1192f
Merge branch 'release/25.12' into determinism
aliceb-nv 8dfdfd8
fixes
aliceb-nv 8f26067
restore fj scratch
aliceb-nv 24fdc75
Merge branch 'release/25.12' into determinism
aliceb-nv 759b896
fix build
aliceb-nv dc30219
tmp dual simplex instrument
aliceb-nv 1ca01ba
dual simplex feature logging
aliceb-nv 5894ffe
add support for building with clang
aliceb-nv 9911c3a
remove debug calls
aliceb-nv 24b828e
fix cmakelists
aliceb-nv d52bcb0
move suppressiosn
aliceb-nv ef69eb7
PDLP features
aliceb-nv 7ac230f
script tweaks
aliceb-nv 24d7ccb
more feature loggign
aliceb-nv d35bed2
fix logging
aliceb-nv 1913946
basic dual simplex and pdlp predictors
aliceb-nv ecf9f25
improved dualsimplex instrumentation
aliceb-nv fb9c782
integrate work unit limiting with branch_and_bound
aliceb-nv 4a51ca7
Merge branch 'release/25.12' into determinism
aliceb-nv 1a4ac76
add work unit scheduler for parallel threads
aliceb-nv ce44aff
cleanup
aliceb-nv 9b881d8
fix build
aliceb-nv b293e94
cleanup
aliceb-nv 88adfcd
Merge branch 'release/25.12' into determinism
aliceb-nv ee7037f
cleanup
aliceb-nv fb0c072
add support for building with clang
aliceb-nv e3f2a79
remove debug calls
aliceb-nv 057ecc7
fix cmakelists
aliceb-nv 2463de6
move suppressiosn
aliceb-nv 8356f1d
address warnings, add msan setting
aliceb-nv 192ce53
Merge branch 'release/25.12' into clang-tsan
aliceb-nv 8b31229
Merge branch 'main' into clang-tsan
aliceb-nv 3cced01
clang compiler bug workaround
aliceb-nv 63c917a
Merge remote-tracking branch 'fork-repo/clang-tsan' into clang-tsan
aliceb-nv d33939b
Merge branch 'main' into determinism
aliceb-nv 47ae4cf
Merge branch 'main' into determinism
aliceb-nv ed224fb
Merge branch 'main' into determinism
aliceb-nv 741f373
initial bb debug impl
aliceb-nv 63b9ed1
Merge branch 'main' into clang-tsan
aliceb-nv 0ea2c1f
some debug tweaks
aliceb-nv 00326e2
Merge branch 'clang-tsan' into determinism
aliceb-nv c374f69
fix copyright
aliceb-nv 2ae3d3e
Merge branch 'clang-tsan' into determinism
aliceb-nv d89c50a
flag to disable gpu heuristics
aliceb-nv d67f230
BSP b&b progress
aliceb-nv eb6bc28
initial working impl on small problens
aliceb-nv d80667c
more instrumentation
aliceb-nv 8ed172a
keep basis when possible
aliceb-nv 2a16ee6
merge and fix nondeterministic node compare
aliceb-nv ef777c6
more logs, cache cpu clock
aliceb-nv 6dcb062
plunging for deterministic search
aliceb-nv 35e8177
move to work_unit_scheduler to allow for mid-node syncs
aliceb-nv e06af9f
better debug printouts
aliceb-nv 99e9ec2
improve ins_vector coverage; fix case where instrumeted mem accesses …
aliceb-nv 8fdbff8
fix sync bug on termination
aliceb-nv b6d7ecc
revert disable heuristics
aliceb-nv 668391e
no presovle when determinsitic
aliceb-nv 3b6d532
restore nondeterminsitc codepath behavior
aliceb-nv 81aaf20
Merge branch 'main' into determinism
aliceb-nv 07cea4d
cleanup work
aliceb-nv 9fb0edd
more cleanup to test for regressions
aliceb-nv 21b5e29
move GPU determinism changes to another PR
aliceb-nv 8ed90ac
restore run_bounds_strengthening=false in DS presolve
aliceb-nv cdcd101
spring cleaning
aliceb-nv cd5d073
cleaning
aliceb-nv 14d3911
no bs changes
aliceb-nv 9289be4
memins on
aliceb-nv c1526b8
fix memins bug
aliceb-nv a6e18d7
no ins_wrapper for bound strengthening to allow autovectorization (co…
aliceb-nv ac57402
stripped down ins_wrapper
aliceb-nv 512a960
Revert "stripped down ins_wrapper"
aliceb-nv fb45144
merge attempt 1, needs cleanup
aliceb-nv 61c1563
initial detemrinistic diving impl
aliceb-nv bfb6611
separate time limit and work unit parameters
aliceb-nv 2f673e7
fix issue on presolved to optimality instances
aliceb-nv cfbb99b
restore gpu heurs
aliceb-nv 01747f4
fix BSP b&b getting starved too early
aliceb-nv e689154
same diving ratio as base solver
aliceb-nv 14eb9a7
cleanup work
aliceb-nv 7755bd7
further cleanup work
aliceb-nv a63f032
incorporating cpufj into the deterministic framework
aliceb-nv bc3bfde
fjcpu cleanup
aliceb-nv 50c574e
update terminology
aliceb-nv 2947a23
unify pseudocost computations
aliceb-nv 8c5e9f6
policy system for solve_lp_
aliceb-nv c2bab57
Revert policy system to move it to a later PR
aliceb-nv f16db00
restore fixes
aliceb-nv 2b7859e
log ds features and bounds strenghtening
aliceb-nv af31388
fix logs
aliceb-nv f102139
timing stuff
aliceb-nv 5a62393
bump 1
aliceb-nv fc82a41
bump 2
aliceb-nv 261bfc8
add bounds strenghtening predictor (unused yet)
aliceb-nv 1aca951
Fix issue with work limits that aren't multiples of the horizon steps
aliceb-nv 19210f0
propagate solutions to the solver in determinsitic mode
aliceb-nv 92a8705
fix envvar
aliceb-nv bbc966b
fix some issues with hashes
aliceb-nv cff46f3
bump1
aliceb-nv 254be07
bump2
aliceb-nv ae98cbd
fix tie-breaking and ins_vector counters not being reset appropriately
aliceb-nv 83e0b37
bump1
aliceb-nv f6a908d
no CPUFJ
aliceb-nv 5ed3732
bump1
aliceb-nv 4a5270f
Refactoring, fix incorrect optimality, add tests
aliceb-nv 2ed103c
add work limit as a parameter
aliceb-nv 16dcfa8
Merge branch 'main' into determinism
aliceb-nv 0d2226c
add parameter for MIP seed
aliceb-nv 409b1ee
restore probing cache
aliceb-nv addae13
bump1
aliceb-nv e9a5fac
bump2
aliceb-nv 4f75132
fix compute_hash using the defautl stream and breaking graph capture
aliceb-nv 2fd6859
bump1
aliceb-nv a10ac30
fix concurrent LP solve and probing cache in deterministic mode
aliceb-nv 5000cda
more stats logging
aliceb-nv fab2ffe
horizon 0.15
aliceb-nv 183e2ce
horizon 0.25
aliceb-nv 24e4192
horizon 0.5
aliceb-nv 48b74c8
horizon step 1.00
aliceb-nv 12f7b87
restore
aliceb-nv 61c5f77
fix incorrect optimal report
aliceb-nv a0137d1
Merge branch 'release/26.02' into determinism
aliceb-nv 9e8488c
fix pseudocost updates
aliceb-nv 30eb52e
w/ bounds strenght
aliceb-nv 9817131
fix holes in implementation
aliceb-nv 383e69a
no BS
aliceb-nv 585bdf0
no BS typo
aliceb-nv dcf0542
greater horizon
aliceb-nv 175ffc8
BS back
aliceb-nv 0e89356
with logging
aliceb-nv 15dd371
add numericla restart to diving and lower bound ceiling updates in BSP
aliceb-nv 30a147a
cleanup
aliceb-nv dc2fd90
Merge branch 'release/26.02' into determinism
aliceb-nv 91c95e2
heap instead of rebuild
aliceb-nv 5ea1621
cleanup, fix loss of determinism
aliceb-nv b9960c0
more cleanup
aliceb-nv 2c6e12e
fix determinism test seed
aliceb-nv be15f63
fix fjcpu bug
aliceb-nv 3b93226
bump
aliceb-nv 9e4b2ee
add comment description
aliceb-nv 1b35ac9
Merge branch 'release/26.02' into determinism
aliceb-nv deff899
copyright fixes
aliceb-nv 0b0e65b
review comments
aliceb-nv c5438a4
fix wait_for_producers target
aliceb-nv 433ae0e
no cpufj for bench
aliceb-nv afd24ad
Merge branch 'release/26.02' into determinism
aliceb-nv 9448dd7
Revert "no cpufj for bench"
aliceb-nv 799f9f5
more logging for bounds strength
aliceb-nv 6c408f2
fix logging
aliceb-nv 4d1f684
disable RUNPATH
aliceb-nv 8810401
Revert "fix logging"
aliceb-nv a811e86
Revert "more logging for bounds strength"
aliceb-nv File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to declare the alias here? It does not seem to be used in this file.