1. A method of analyzing a computer program, the computer program including instructions of code, the method comprising: a processor and a memory performing: selecting a number of continuous instructions that are run in program execution order to define an interval of execution; running the code of the computer program, wherein said running the code comprises running a plurality of continuous instructions of the code in program execution order, wherein within the plurality of continuous instructions, the code is run over a plurality of the defined intervals of execution, wherein each of the plurality of defined intervals of execution is run over the selected number of continuous instructions; during said step of running the code, tracking a statistic for a program component; identifying a behavior of the computer program over each of the plurality of defined intervals of execution over which the code is run based on the tracked statistic; comparing at least one identified behavior for at least one defined interval of execution over which the code is run to another defined interval of execution over which the code is run to determine similarity between the defined intervals of execution.