US 7,523,465 B2
Methods and apparatus for generating speculative helper thread spawn-target points
Tor M. Aamodt, Toronto (Canada); Hong Wang, San Jose, Calif. (US); John Shen, San Jose, Calif. (US); and Per Hammarlund, Hillsboro, Oreg. (US)
Assigned to Intel Corporation, Santa Clara, Calif. (US)
Filed on Apr. 24, 2003, as Appl. No. 10/422,528.
Application 10/422528 is a continuation in part of application No. 10/356435, filed on Jan. 31, 2003.
Prior Publication US 2004/0154019 A1, Aug. 05, 2004
Int. Cl. G06F 3/00 (2006.01); G06F 9/44 (2006.01); G06F 9/46 (2006.01); G06F 13/00 (2006.01)
U.S. Cl. 719—320 31 Claims
OG exemplary drawing
 
1. A method of generating a speculative helper thread, the method comprising:
identifying a code region in main thread software instructions based on cache misses;
selecting a spawn-target pair, the spawn-target pair including a target point preceding the code region and a spawn point preceding the target point, the spawn-target pair selection being based on a spawn-target selection calculation, comprising calculating a posteriori probability associated with the spawn-target pair;
generating helper thread software instructions to launch a helper thread at the spawn point to prefetch a subset of the main thread software instructions, wherein the spawn-target selection calculation is indicative of the benefit of the helper thread; and
attaching the helper thread software instructions to the main thread software instructions.