search for: cacheentry

Displaying 11 results from an estimated 11 matches for "cacheentry".

Did you mean: cache_entry
2018 Mar 27
4
[pre-RFC] Data races in concurrent ThinLTO processes
...one for a reason. There is a comment below with the explanation, but it doesn’t make it more clear to me. If this reason/explanation makes sense, then we should do Option 2. This is exactly what I previously proposed in Solution #0 for Problem #3. // Commit to the cache (if enabled) CacheEntry.write(*OutputBuffer); if (SavedObjectsDirectoryPath.empty()) { // We need to generated a memory buffer for the linker. if (!CacheEntryPath.empty()) { // Cache is enabled, reload from the cache // We do this to lower memory pressuree: the buffer i...
2018 Mar 27
0
[pre-RFC] Data races in concurrent ThinLTO processes
...ith the explanation, but > it doesn’t make it more clear to me. If this reason/explanation makes > sense, then we should do Option 2. This is exactly what I previously > proposed in Solution #0 for Problem #3. > > > > // Commit to the cache (if enabled) > > CacheEntry.write(*OutputBuffer); > > > > if (SavedObjectsDirectoryPath.empty()) { > > // We need to generated a memory buffer for the linker. > > if (!CacheEntryPath.empty()) { > > // Cache is enabled, reload from the cache > >...
2018 Mar 27
2
[pre-RFC] Data races in concurrent ThinLTO processes
...one for a reason. There is a comment below with the explanation, but it doesn’t make it more clear to me. If this reason/explanation makes sense, then we should do Option 2. This is exactly what I previously proposed in Solution #0 for Problem #3. // Commit to the cache (if enabled) CacheEntry.write(*OutputBuffer); if (SavedObjectsDirectoryPath.empty()) { // We need to generated a memory buffer for the linker. if (!CacheEntryPath.empty()) { // Cache is enabled, reload from the cache // We do this to lower memory pressuree: the buffer i...
2018 Mar 27
0
[pre-RFC] Data races in concurrent ThinLTO processes
...e is a comment below with the explanation, but it doesn’t make it more clear to me. If this reason/explanation makes sense, then we should do Option 2. This is exactly what I previously proposed in Solution #0 for Problem #3. > > // Commit to the cache (if enabled) > CacheEntry.write(*OutputBuffer); > > if (SavedObjectsDirectoryPath.empty()) { > // We need to generated a memory buffer for the linker. > if (!CacheEntryPath.empty()) { > // Cache is enabled, reload from the cache > // We do this to lower...
2018 Mar 27
0
[pre-RFC] Data races in concurrent ThinLTO processes
...ith the explanation, but > it doesn’t make it more clear to me. If this reason/explanation makes > sense, then we should do Option 2. This is exactly what I previously > proposed in Solution #0 for Problem #3. > > > > // Commit to the cache (if enabled) > > CacheEntry.write(*OutputBuffer); > > > > if (SavedObjectsDirectoryPath.empty()) { > > // We need to generated a memory buffer for the linker. > > if (!CacheEntryPath.empty()) { > > // Cache is enabled, reload from the cache > >...
2018 Mar 27
1
[pre-RFC] Data races in concurrent ThinLTO processes
...one for a reason. There is a comment below with the explanation, but it doesn’t make it more clear to me. If this reason/explanation makes sense, then we should do Option 2. This is exactly what I previously proposed in Solution #0 for Problem #3. // Commit to the cache (if enabled) CacheEntry.write(*OutputBuffer); if (SavedObjectsDirectoryPath.empty()) { // We need to generated a memory buffer for the linker. if (!CacheEntryPath.empty()) { // Cache is enabled, reload from the cache // We do this to lower memory pressuree: the buffer i...
2018 Mar 22
0
[pre-RFC] Data races in concurrent ThinLTO processes
...ther discussion. > > > Solution #0 (it won’t require much modifications): > (a) If ‘rename’ fails, do not write into the cache directly (we don’t want to have non-atomic writes!). > (b) If ‘rename’ fails, try to read from the cache. > auto ReloadedBufferOrErr = CacheEntry.tryLoadingBuffer(); > (c) If reading from the cache fails simply use the file that you just compiled directly (bypassing the cache entirely). > > This solution might cause cache misses (causing recompilations), but at least it should prevent data races when two ThinLTO processes write...
2018 Mar 22
4
[pre-RFC] Data races in concurrent ThinLTO processes
...ill trigger a further discussion. Solution #0 (it won't require much modifications): (a) If 'rename' fails, do not write into the cache directly (we don't want to have non-atomic writes!). (b) If 'rename' fails, try to read from the cache. auto ReloadedBufferOrErr = CacheEntry.tryLoadingBuffer(); (c) If reading from the cache fails simply use the file that you just compiled directly (bypassing the cache entirely). This solution might cause cache misses (causing recompilations), but at least it should prevent data races when two ThinLTO processes write to the same f...
2018 Mar 27
2
[pre-RFC] Data races in concurrent ThinLTO processes
...> further discussion. > > > *Solution #0 (it won’t require much modifications):* > (a) If ‘rename’ fails, do not write into the cache directly (we don’t > want to have non-atomic writes!). > (b) If ‘rename’ fails, try to read from the cache. > *auto ReloadedBufferOrErr = CacheEntry.tryLoadingBuffer();* > *(c)* If reading from the cache fails simply use the file that you just > compiled directly (bypassing the cache entirely). > > This solution might cause cache misses (causing recompilations), but at > least it should prevent data races when two ThinLTO proce...
2018 Mar 27
0
[pre-RFC] Data races in concurrent ThinLTO processes
...; >> >> Solution #0 (it won’t require much modifications): >> (a) If ‘rename’ fails, do not write into the cache directly (we don’t want to have non-atomic writes!). >> (b) If ‘rename’ fails, try to read from the cache. >> auto ReloadedBufferOrErr = CacheEntry.tryLoadingBuffer(); >> (c) If reading from the cache fails simply use the file that you just compiled directly (bypassing the cache entirely). >> >> This solution might cause cache misses (causing recompilations), but at least it should prevent data races when two ThinLTO proc...
2018 Mar 27
1
[pre-RFC] Data races in concurrent ThinLTO processes
...ions below. Hopefully, it will trigger a further discussion. Solution #0 (it won’t require much modifications): (a) If ‘rename’ fails, do not write into the cache directly (we don’t want to have non-atomic writes!). (b) If ‘rename’ fails, try to read from the cache. auto ReloadedBufferOrErr = CacheEntry.tryLoadingBuffer(); (c) If reading from the cache fails simply use the file that you just compiled directly (bypassing the cache entirely). This solution might cause cache misses (causing recompilations), but at least it should prevent data races when two ThinLTO processes write to the same file...