[ENHANCEMENT] Improve batch grader speed with multithreading
Describe the current behavior of what you're trying to improve. If your enhancement request related to a problem, please also describe the problem.
Currently, the batch grader is slow when grading for many, many students. Improving the speed of the batch grader would allow educators to get the student grades quicker.
Describe the improvement you'd like
Consider using multithreading to help speed up the batch grader process. We could create a separate thread for each student rather than going through all the students iteratively.
Describe alternatives you've considered
A possible addition of a "grade-by-flag" implementation was considered, where if a proof was deemed correct by the Legup software, a flag would be added to verify that the proof was correct. This would allow the batch grader to check for that flag first before needing to manually verify the proof itself.
Additional Context
No response
I am pretty sure that Chase implemented the suggestion you make at the end: that the saved file for a completed proof will contain a flag of correctness that the batch grader to check that flag ... and not do any actual proof checking at all