Claims
- 1. A multiprocessor system, comprising:
a plurality of processors, each having at least one level of cache memory operatively connected thereto; at least one memory unit shared by at least two of the processors; a status memory, in correspondence to each processor, configured to store a current status in correspondence to memory regions capable of being stored in the cache memories, wherein the current status indicates whether a memory region is non-shared; and logic, in correspondence to and operatively connected to each processor, for generating minimum cache-coherence activities in response to a memory access request by a respective processor, the logic including first cache-coherent minimizing logic configured to generate a direct memory access request for one of a next level of cache memory and the shared memory unit in response to a memory access request by the respective processor to a memory region causing a cache-miss and indicated as non-shared by the current status.
- 2 The multiprocessor system according to claim 1, wherein the current status further indicates whether the memory region is currently read-only, the logic for generating minimum cache-coherence activities comprising:
a second cache-coherent minimizing logic configured to generate a read memory access request directly for one of the next level of cache memory and the shared memory unit in response to a read memory access request by the respective processor to a memory region causing a cache-miss and indicted as read-only by the current status
- 3. The multiprocessor system according to claim 1, wherein the logic for generating minimum cache-coherence activities comprises:
a third cache-coherent minimizing logic configured to generate a read memory access request directly for one of the next level of cache memory and the shared memory unit in response to a code-fetch memory access request by the respective processor.
- 4. The multiprocessor system according to claim 1, wherein the current status identifies at least one cache memory capable of holding data of the requested memory region.
- 5. The multiprocessor system according to claim 4, wherein the logic for generating minimum cache-coherence activities comprises:
a fourth cache-coherent logic configured to generate a cache-coherent processing request for the respective processor related to an address to the data of the requested memory region when the data is indicated as being held by the cache memories of other processors.
- 6. The multiprocessor system according to claim 5, wherein the fourth cache-coherent logic is further configured to generate the cache-coherent processing request only for the at least one cache memory capable of holding the data.
- 7. The multiprocessor system according to claim 1, comprising:
logic configured to identify when a number of memory access requests to memory regions not represented by the status memory exceeds a cache-miss rate according to a first algorithm; and logic to configured to disable the logic for generating minimum cache-coherence activities when the number of memory access requests to memory regions not represented by the status memory exceeds the cache-miss rate.
- 8. The multiprocessor system according to claim 7, wherein the logic for generating minimum cache-coherence activities connected to the respective processor is disabled based on the first algorithm and the cache-miss rate of the cache memory connected to the respective processor.
- 9. The multiprocessor system according to claim 7, comprising:
logic configured to enable the logic for generating minimum cache-coherence activities when an estimation of the difference of the number of memory access requests to memory regions not represented by the status memory and the cache-miss rate reaches a second value.
- 10. A multiprocessor system comprising:
a plurality of processors, each having at least one level of cache memory operatively connected thereto; at least one memory unit shared by at least two of the processors; a status memory, provided in correspondence to each processor, for storing a current status in correspondence to memory regions capable of being stored in the cache memories, wherein the current status indicates whether the memory region is currently read-only; and logic, in correspondence to and operatively connected to each processor, for generating minimum cache-coherence activities in response to a memory access request by a respective processor, the logic including first cache coherent minimizing logic configured to generate a read memory access request directly for one of the next level of cache memory and the shared memory unit in response to a read memory access request by the respective processor to a memory region causing a cache-miss and indicted as read-only by the current status.
- 11. The multiprocessor system according to claim 10, wherein the logic for generating minimum cache-coherence activities comprises:
logic configured to resize memory regions dynamically for usage by the multiprocessor system.
- 12. The multiprocessor system according to claim 11, wherein the logic configured to resize memory regions comprises:
logic configured to detect whether a memory region is actively shared; logic configured to decrease the size of an actively shared memory region to a first size; and logic configured to increase the size of a non-actively shared memory region to a second size larger than the first size.
Priority Claims (1)
| Number |
Date |
Country |
Kind |
| 0103847-0 |
Nov 2001 |
SE |
|
RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Application No. 60/332,592, filed Nov. 23, 2001, and claims priority under 35 U.S.C. §§119(a)-(d) and/or 365 to Swedish Application No. 0103847-0, filed Nov. 16, 2001, the entire contents of which are incorporated by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60332592 |
Nov 2001 |
US |