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

Parallel Block Merge mental breakdown #43

Closed
Gaming32 opened this issue May 23, 2021 · 4 comments
Closed

Parallel Block Merge mental breakdown #43

Gaming32 opened this issue May 23, 2021 · 4 comments
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@Gaming32
Copy link
Owner

Gaming32 commented May 23, 2021

Just run Parallel Block Merge Sort yourself and view the carnage.

For reference: https://youtu.be/0ae2q700NNc?t=8249

@Gaming32 Gaming32 added bug Something isn't working help wanted Extra attention is needed labels May 23, 2021
@EmeraldBlock
Copy link
Collaborator

EmeraldBlock commented May 23, 2021

seems to be caused by the changes to Highlights.java
Confirmed that this bug is caused by something between 2f13f2d and e99782d (see #39).

Interestingly the behavior of the sort changes too - it fails despite its code not being altered

@EmeraldBlock
Copy link
Collaborator

Cause identified: Highlights.clearAllMarks() was not synchronous. I have no clue how that fixes this.

@Gaming32
Copy link
Owner Author

Ah yes, threading without a GIL to keep you safe. always fun

@EmeraldBlock
Copy link
Collaborator

EmeraldBlock commented May 23, 2021

clearAllMarks() is used by binary insertion sort which is used by parallel block merge, so I guess that's how it's relevant

still no clue how this alters the sort's behavior; the Highlights functions only modify Highlights properties
Oh, the issue was just that the exceptions thrown by the Highlights functions killed the sorting threads

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants