Profiling of computer programs executing in virtual memory systems
First Claim
1. A method, comprising:
- executing a program in a logical address space of a computer, with an address translation circuit translating address references generated by the program from the program'"'"'s logical address space to the computer'"'"'s physical address space;
recording profile information that records physical memory addresses referenced during an execution interval of the program, the profile information being distinct from address translation information for use by the address translation circuit.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer. An instruction pipeline and memory access unit execute instructions in a logical address space of a memory of the computer. An address translation circuit translates address references generated by the program from the program'"'"'s logical address space to the computer'"'"'s physical address space. Profile circuitry is cooperatively interconnected with the instruction pipeline and configured to detect, without compiler assistance for execution profiling, occurrence of profilable events occurring in the instruction pipeline, and is cooperatively interconnected with the memory access unit to record profile information describing physical memory addresses referenced during an execution interval of the program.
379 Citations
81 Claims
-
1. A method, comprising:
-
executing a program in a logical address space of a computer, with an address translation circuit translating address references generated by the program from the program'"'"'s logical address space to the computer'"'"'s physical address space;
recording profile information that records physical memory addresses referenced during an execution interval of the program, the profile information being distinct from address translation information for use by the address translation circuit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
executing a program on a computer, the program referring to memory by virtual address; and
concurrently with the execution of the program, recording profile information describing memory references made by the program, the profile information recording physical addresses of the profiled memory references, the profile information being distinct from address translation information for use by address translation circuitry of the computer. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66)
-
-
67. A computer, comprising:
-
an instruction pipeline and memory access unit configured to execute instructions in a logical address space of a memory of the computer;
an address translation circuit for translating address references generated by the program from the program'"'"'s logical address space to the computer'"'"'s physical address space; and
profile circuitry cooperatively interconnected with the instruction pipeline and configured to detect, without compiler assistance for execution profiling, occurrence of profileable events occurring in the instruction pipeline, and cooperatively interconnected with the memory access unit to record profile information describing physical memory addresses referenced during an execution interval of the program, the profile information being distinct from address translation information for use by the address translation circuit. - View Dependent Claims (68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81)
-
Specification