System and Method for Predicting False Sharing
AssigneeFuturewei Technologies, Inc.
InventorsChen Tian, Tongping Liu, Ziang Hu
Life of this patent
Estimating the term…
Abstract
In one embodiment, a method for predicting false sharing includes running code on a plurality of cores and tracking potential false sharing in the code while running the code to produce tracked potential false sharing, where tracking the potential false sharing includes determining whether there is potential false sharing between a first cache line and a second cache line, and where the first cache line is adjacent to the second cache line. The method also includes reporting potential false sharing in accordance with the tracked potential false sharing to produce a false sharing report.
Claims20
A method for predicting false sharing, the method comprising:
- running code on a plurality of cores;
- tracking potential false sharing in the code while running the code to produce tracked potential false sharing, wherein tracking the potential false sharing comprises determining whether there is potential false sharing between a first cache line and a second cache line, and wherein the first cache line is adjacent to the second cache line;
- and
- reporting potential false sharing in accordance with the tracked potential false sharing to produce a false sharing report.
A method for predicting false sharing, the method comprising:
- performing a first access to a first cache line by a first thread;
- performing a second access to a second cache line by a second thread, wherein the first cache line is adjacent to the second cache line;
- determining a distance between the first access and the second access;
- and
- identifying a potential false sharing incident when the distance between the first access and the second access is greater than a size of the first cache line.
A computer comprising:
- a first processor;
- a second processor;
- and
- a non-transitory computer readable storage medium storing programming for execution by the first processor and the second processor, wherein the programming comprises instrumentation, the programming including instructions to
- track potential false sharing in the programming to produce tracked potential false sharing, wherein the instructions to track the potential false sharing comprises instructions to determine whether there is potential false sharing between a first cache line and a second cache line, and wherein the first cache line is adjacent to the second cache line, and
- report potential false sharing in accordance with the tracked potential false sharing to produce a false sharing report.
Dependencies are inferred from the claim text.