Type:
Task
Priority:
Major
Resolution:
Fixed
Currently atomic operations create full memory barrier. This ensures correct program behavior. However weaker memory barriers have lower performance impact and there are many cases when weaker memory barrier is sufficient.
The idea of this task is to adopt C11 atomic API to some extent, so it is possible to specify memory barriers for atomic operations.
C11 atomic operations as such seem to be unavailable in many environments. E.g. they appeared only in gcc-4.9. MSVC doesn't seem to support them, same for Solaris Studio.
It is proposed to use gcc atomic builtins whenever they're available, otherwise fall back to atomic operations with implicit full memory barrier.
{"report":{"fcp":794.2999999523163,"ttfb":187,"pageVisibility":"visible","entityId":44323,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"bbc9665d-bb58-4251-b368-629a0f2b90ad","navigationType":0,"readyForUser":843.7999999523163,"redirectCount":0,"resourceLoadedEnd":702.7999999523163,"resourceLoadedStart":191.90000009536743,"resourceTiming":[{"duration":101.79999995231628,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":191.90000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":191.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":293.7000000476837,"responseStart":0,"secureConnectionStart":0},{"duration":101.59999990463257,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":192.20000004768372,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":192.20000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":293.7999999523163,"responseStart":0,"secureConnectionStart":0},{"duration":151.60000014305115,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":192.29999995231628,"connectEnd":192.29999995231628,"connectStart":192.29999995231628,"domainLookupEnd":192.29999995231628,"domainLookupStart":192.29999995231628,"fetchStart":192.29999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":192.29999995231628,"responseEnd":343.90000009536743,"responseStart":343.90000009536743,"secureConnectionStart":192.29999995231628},{"duration":228.59999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":192.40000009536743,"connectEnd":192.40000009536743,"connectStart":192.40000009536743,"domainLookupEnd":192.40000009536743,"domainLookupStart":192.40000009536743,"fetchStart":192.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":192.40000009536743,"responseEnd":421,"responseStart":421,"secureConnectionStart":192.40000009536743},{"duration":225.20000004768372,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":192.40000009536743,"connectEnd":192.40000009536743,"connectStart":192.40000009536743,"domainLookupEnd":192.40000009536743,"domainLookupStart":192.40000009536743,"fetchStart":192.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":192.40000009536743,"responseEnd":417.60000014305115,"responseStart":417.60000014305115,"secureConnectionStart":192.40000009536743},{"duration":228.79999995231628,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":192.60000014305115,"connectEnd":192.60000014305115,"connectStart":192.60000014305115,"domainLookupEnd":192.60000014305115,"domainLookupStart":192.60000014305115,"fetchStart":192.60000014305115,"redirectEnd":0,"redirectStart":0,"requestStart":192.60000014305115,"responseEnd":421.40000009536743,"responseStart":421.40000009536743,"secureConnectionStart":192.60000014305115},{"duration":229.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":192.60000014305115,"connectEnd":192.60000014305115,"connectStart":192.60000014305115,"domainLookupEnd":192.60000014305115,"domainLookupStart":192.60000014305115,"fetchStart":192.60000014305115,"redirectEnd":0,"redirectStart":0,"requestStart":192.60000014305115,"responseEnd":421.7000000476837,"responseStart":421.7000000476837,"secureConnectionStart":192.60000014305115},{"duration":229.40000009536743,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":192.70000004768372,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":192.70000004768372,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":422.10000014305115,"responseStart":0,"secureConnectionStart":0},{"duration":229.30000019073486,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":192.79999995231628,"connectEnd":192.79999995231628,"connectStart":192.79999995231628,"domainLookupEnd":192.79999995231628,"domainLookupStart":192.79999995231628,"fetchStart":192.79999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":192.79999995231628,"responseEnd":422.10000014305115,"responseStart":422.10000014305115,"secureConnectionStart":192.79999995231628},{"duration":229.70000004768372,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":192.90000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":192.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":422.60000014305115,"responseStart":0,"secureConnectionStart":0},{"duration":229.60000014305115,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":193,"connectEnd":193,"connectStart":193,"domainLookupEnd":193,"domainLookupStart":193,"fetchStart":193,"redirectEnd":0,"redirectStart":0,"requestStart":193,"responseEnd":422.60000014305115,"responseStart":422.60000014305115,"secureConnectionStart":193},{"duration":430.40000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":193.79999995231628,"connectEnd":193.79999995231628,"connectStart":193.79999995231628,"domainLookupEnd":193.79999995231628,"domainLookupStart":193.79999995231628,"fetchStart":193.79999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":193.79999995231628,"responseEnd":624.2000000476837,"responseStart":624.2000000476837,"secureConnectionStart":193.79999995231628},{"duration":509,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":193.79999995231628,"connectEnd":193.79999995231628,"connectStart":193.79999995231628,"domainLookupEnd":193.79999995231628,"domainLookupStart":193.79999995231628,"fetchStart":193.79999995231628,"redirectEnd":0,"redirectStart":0,"requestStart":193.79999995231628,"responseEnd":702.7999999523163,"responseStart":702.7999999523163,"secureConnectionStart":193.79999995231628},{"duration":149.19999980926514,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":551.6000001430511,"connectEnd":551.6000001430511,"connectStart":551.6000001430511,"domainLookupEnd":551.6000001430511,"domainLookupStart":551.6000001430511,"fetchStart":551.6000001430511,"redirectEnd":0,"redirectStart":0,"requestStart":551.6000001430511,"responseEnd":700.7999999523163,"responseStart":700.7999999523163,"secureConnectionStart":551.6000001430511}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":69,"responseStart":187,"responseEnd":190,"domLoading":190,"domInteractive":888,"domContentLoadedEventStart":888,"domContentLoadedEventEnd":918,"domComplete":1749,"loadEventStart":1749,"loadEventEnd":1751,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":872.9000000953674},{"name":"bigPipe.sidebar-id.end","time":873.5},{"name":"bigPipe.activity-panel-pipe-id.start","time":873.6000001430511},{"name":"bigPipe.activity-panel-pipe-id.end","time":876.2000000476837},{"name":"activityTabFullyLoaded","time":925.2999999523163}],"measures":[],"correlationId":"32b07de738e204","effectiveType":"4g","downlink":9,"rtt":0,"serverDuration":67,"dbReadsTimeInMs":10,"dbConnsTimeInMs":17,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}