US 12,314,712 B1
Partitioning code bases for parallel execution of code analysis
Martin Schaef, Queens, NY (US); Linghui Luo, Paderborn (DE); Nicolas Leandro Rosner, New York, NY (US); Aritra Sengupta, Mountain View, CA (US); Antonio Filieri, Sunnyvale, CA (US); Thomas L J Cottenier, Sammamish, WA (US); and Lee Pike, Portland, OR (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 26, 2022, as Appl. No. 17/935,504.
Int. Cl. G06F 8/75 (2018.01); G06F 8/71 (2018.01)
CPC G06F 8/75 (2013.01) [G06F 8/71 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
at least one processor; and
a memory, storing program instructions that when executed by the at least one processor, cause the at least one processor to implement a code analysis system:
receive, via an interface of the code analysis system, a code base for analysis;
select a partitioning technique to apply to the code base based, at least in part, on one or more selections of a plurality of different code analysis tasks to respectively perform on each portion of the code base, wherein the partitioning technique determines how to divide the code base into portions;
apply the selected partitioning technique to the code base to divide the code base into a plurality of code portions;
direct parallel execution of the plurality of different code analysis tasks on the plurality of code portions to determine respective results for the different code analysis tasks based, at least in part, on aggregating portion-specific results for the plurality of code portions for individual ones of the different code analysis tasks; and
send, via the interface, the respective results of the different code analysis tasks.