From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from esa3.mentor.iphmx.com (esa3.mentor.iphmx.com [68.232.137.180]) by sourceware.org (Postfix) with ESMTPS id 2C9EA3858C53; Wed, 20 Apr 2022 13:25:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2C9EA3858C53 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com X-IronPort-AV: E=Sophos;i="5.90,275,1643702400"; d="scan'208";a="74516830" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa3.mentor.iphmx.com with ESMTP; 20 Apr 2022 05:25:41 -0800 IronPort-SDR: C5vP0Uwx5SCitDXkmNVP4dolgeZ5vy/voHbIwFA09aJH+X9mJEeFrowvcQPXzT4VKThhIHHJo+ Nm7uIpg6Cq97MAMwppcYaT4ghZHhKkfxpJoxtxgHwWbASMKpB57gegfHzChXb/wu4L0OqgEFVa e53KR+jWh5n0nAB8GMi9N/x+ma7IEZ7xxDWXiPSxN48Joakkr1sR8HahHu8x9xGa1uFABPYwqB UTwzK2x3hymn0g+9AmhWU1HyM+XMKI7dRwCTOiGOR85P0fEOXlsg66xGQuUUO/yX4LHRNkFnNB 4+c= Content-Type: multipart/mixed; boundary="------------jZOokMJkKU3w0M8c2W073StA" Message-ID: <775311a3-2c8a-2ad3-e9d4-9b1e4334b734@codesourcery.com> Date: Wed, 20 Apr 2022 14:25:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Subject: [PATCH] openmp: Handle unified address memory. Content-Language: en-GB To: Hafiz Abid Qadeer , , CC: , References: <20220308113059.688551-1-abidh@codesourcery.com> From: Andrew Stubbs In-Reply-To: <20220308113059.688551-1-abidh@codesourcery.com> X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-14.mgc.mentorg.com (139.181.222.14) To svr-ies-mbx-11.mgc.mentorg.com (139.181.222.11) X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: fortran@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Fortran mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 Apr 2022 13:25:44 -0000 --------------jZOokMJkKU3w0M8c2W073StA Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit This patch adds enough support for "requires unified_address" to make the sollve_vv testcases pass. It implements unified_address as a synonym of unified_shared_memory, which is both valid and the only way I know of to unify addresses with Cuda (could be wrong). This patch should be applied on to of the previous patch set for USM. OK for stage 1? I'll apply it to OG11 shortly. Andrew --------------jZOokMJkKU3w0M8c2W073StA Content-Type: text/plain; charset="UTF-8"; name="220420-unified_address.patch" Content-Disposition: attachment; filename="220420-unified_address.patch" Content-Transfer-Encoding: base64 b3Blbm1wOiB1bmlmaWVkX2FkZHJlc3Mgc3VwcG9ydAoKVGhpcyBtYWtlcyAicmVxdWlyZXMg dW5pZmllZF9hZGRyZXNzIiB3b3JrIGJ5IG1ha2luZyBpdCBlcWl2YWxlbnQgdG8KInJlcXVp cmVzIHVuaWZpZWRfc2hhcmVkX21lbW9yeSIuICBUaGlzIGlzIG1vcmUgdGhhbiBpcyBzdHJp Y3RseSBuZWNlc3NhcnksCmJ1dCBzaG91bGQgYmUgc3RhbmRhcmQgY29tcGxpYW50LgoKZ2Nj L2MvQ2hhbmdlTG9nOgoKCSogYy1wYXJzZXIuYyAoY19wYXJzZXJfb21wX3JlcXVpcmVzKTog Q2hlY2sgcmVxdWlyZXMgdW5pZmllZF9hZGRyZXNzCglmb3IgY29uZmxpY3Qgd2l0aCAtZm9m ZmxvYWQtbWVtb3J5PXNoYXJlZC4KCmdjYy9jcC9DaGFuZ2VMb2c6CgoJKiBwYXJzZXIuYyAo Y3BfcGFyc2VyX29tcF9yZXF1aXJlcyk6IENoZWNrIHJlcXVpcmVzIHVuaWZpZWRfYWRkcmVz cwoJZm9yIGNvbmZsaWN0IHdpdGggLWZvZmZsb2FkLW1lbW9yeT1zaGFyZWQuCgpnY2MvZm9y dHJhbi9DaGFuZ2VMb2c6CgoJKiBvcGVubXAuYyAoZ2ZjX21hdGNoX29tcF9yZXF1aXJlcyk6 IENoZWNrIHJlcXVpcmVzIHVuaWZpZWRfYWRkcmVzcwoJZm9yIGNvbmZsaWN0IHdpdGggLWZv ZmZsb2FkLW1lbW9yeT1zaGFyZWQuCgpnY2MvQ2hhbmdlTG9nOgoKCSogb21wLWxvdy5jOiBE byBVU00gdHJhbnNmb3JtYXRpb25zIGZvciAidW5pZmllZF9hZGRyZXNzIi4KCmdjYy90ZXN0 c3VpdGUvQ2hhbmdlTG9nOgoKCSogYy1jKystY29tbW9uL2dvbXAvdXNtLTQuYzogTmV3IHRl c3QuCgkqIGdmb3J0cmFuLmRnL2dvbXAvdXNtLTQuZjkwOiBOZXcgdGVzdC4KCmRpZmYgLS1n aXQgYS9nY2MvYy9jLXBhcnNlci5jIGIvZ2NjL2MvYy1wYXJzZXIuYwppbmRleCAxMjQwODc3 MDE5My4uOWEzZDBjYjhjZWEgMTAwNjQ0Ci0tLSBhL2djYy9jL2MtcGFyc2VyLmMKKysrIGIv Z2NjL2MvYy1wYXJzZXIuYwpAQCAtMjI1MzEsMTggKzIyNTMxLDI3IEBAIGNfcGFyc2VyX29t cF9yZXF1aXJlcyAoY19wYXJzZXIgKnBhcnNlcikKIAkgIGVudW0gb21wX3JlcXVpcmVzIHRo aXNfcmVxID0gKGVudW0gb21wX3JlcXVpcmVzKSAwOwogCiAJICBpZiAoIXN0cmNtcCAocCwg InVuaWZpZWRfYWRkcmVzcyIpKQotCSAgICB0aGlzX3JlcSA9IE9NUF9SRVFVSVJFU19VTklG SUVEX0FERFJFU1M7CisJICAgIHsKKwkgICAgICB0aGlzX3JlcSA9IE9NUF9SRVFVSVJFU19V TklGSUVEX0FERFJFU1M7CisKKwkgICAgICBpZiAoZmxhZ19vZmZsb2FkX21lbW9yeSAhPSBP RkZMT0FEX01FTU9SWV9VTklGSUVECisJCSAgJiYgZmxhZ19vZmZsb2FkX21lbW9yeSAhPSBP RkZMT0FEX01FTU9SWV9OT05FKQorCQllcnJvcl9hdCAoY2xvYywKKwkJCSAgInVuaWZpZWRf YWRkcmVzcyBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgIgorCQkJICAic2VsZWN0ZWQgLWZv ZmZsb2FkLW1lbW9yeSBvcHRpb24iKTsKKwkgICAgICBmbGFnX29mZmxvYWRfbWVtb3J5ID0g T0ZGTE9BRF9NRU1PUllfVU5JRklFRDsKKwkgICAgfQogCSAgZWxzZSBpZiAoIXN0cmNtcCAo cCwgInVuaWZpZWRfc2hhcmVkX21lbW9yeSIpKQotCSAgewotCSAgICB0aGlzX3JlcSA9IE9N UF9SRVFVSVJFU19VTklGSUVEX1NIQVJFRF9NRU1PUlk7Ci0KLQkgICAgaWYgKGZsYWdfb2Zm bG9hZF9tZW1vcnkgIT0gT0ZGTE9BRF9NRU1PUllfVU5JRklFRAotCQkmJiBmbGFnX29mZmxv YWRfbWVtb3J5ICE9IE9GRkxPQURfTUVNT1JZX05PTkUpCi0JICAgICAgZXJyb3JfYXQgKGNs b2MsCi0JCQkidW5pZmllZF9zaGFyZWRfbWVtb3J5IGlzIGluY29tcGF0aWJsZSB3aXRoIHRo ZSAiCi0JCQkic2VsZWN0ZWQgLWZvZmZsb2FkLW1lbW9yeSBvcHRpb24iKTsKLQkgICAgZmxh Z19vZmZsb2FkX21lbW9yeSA9IE9GRkxPQURfTUVNT1JZX1VOSUZJRUQ7Ci0JICB9CisJICAg IHsKKwkgICAgICB0aGlzX3JlcSA9IE9NUF9SRVFVSVJFU19VTklGSUVEX1NIQVJFRF9NRU1P Ulk7CisKKwkgICAgICBpZiAoZmxhZ19vZmZsb2FkX21lbW9yeSAhPSBPRkZMT0FEX01FTU9S WV9VTklGSUVECisJCSAgJiYgZmxhZ19vZmZsb2FkX21lbW9yeSAhPSBPRkZMT0FEX01FTU9S WV9OT05FKQorCQllcnJvcl9hdCAoY2xvYywKKwkJCSAgInVuaWZpZWRfc2hhcmVkX21lbW9y eSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgIgorCQkJICAic2VsZWN0ZWQgLWZvZmZsb2Fk LW1lbW9yeSBvcHRpb24iKTsKKwkgICAgICBmbGFnX29mZmxvYWRfbWVtb3J5ID0gT0ZGTE9B RF9NRU1PUllfVU5JRklFRDsKKwkgICAgfQogCSAgZWxzZSBpZiAoIXN0cmNtcCAocCwgImR5 bmFtaWNfYWxsb2NhdG9ycyIpKQogCSAgICB0aGlzX3JlcSA9IE9NUF9SRVFVSVJFU19EWU5B TUlDX0FMTE9DQVRPUlM7CiAJICBlbHNlIGlmICghc3RyY21wIChwLCAicmV2ZXJzZV9vZmZs b2FkIikpCmRpZmYgLS1naXQgYS9nY2MvY3AvcGFyc2VyLmMgYi9nY2MvY3AvcGFyc2VyLmMK aW5kZXggZmQ5ZjYyZjQ1NDMuLjNhOWVhMjcyZjEwIDEwMDY0NAotLS0gYS9nY2MvY3AvcGFy c2VyLmMKKysrIGIvZ2NjL2NwL3BhcnNlci5jCkBAIC00NjQwNiwxOCArNDY0MDYsMjcgQEAg Y3BfcGFyc2VyX29tcF9yZXF1aXJlcyAoY3BfcGFyc2VyICpwYXJzZXIsIGNwX3Rva2VuICpw cmFnbWFfdG9rKQogCSAgZW51bSBvbXBfcmVxdWlyZXMgdGhpc19yZXEgPSAoZW51bSBvbXBf cmVxdWlyZXMpIDA7CiAKIAkgIGlmICghc3RyY21wIChwLCAidW5pZmllZF9hZGRyZXNzIikp Ci0JICAgIHRoaXNfcmVxID0gT01QX1JFUVVJUkVTX1VOSUZJRURfQUREUkVTUzsKKwkgICAg eworCSAgICAgIHRoaXNfcmVxID0gT01QX1JFUVVJUkVTX1VOSUZJRURfQUREUkVTUzsKKwor CSAgICAgIGlmIChmbGFnX29mZmxvYWRfbWVtb3J5ICE9IE9GRkxPQURfTUVNT1JZX1VOSUZJ RUQKKwkJICAmJiBmbGFnX29mZmxvYWRfbWVtb3J5ICE9IE9GRkxPQURfTUVNT1JZX05PTkUp CisJCWVycm9yX2F0IChjbG9jLAorCQkJICAidW5pZmllZF9hZGRyZXNzIGlzIGluY29tcGF0 aWJsZSB3aXRoIHRoZSAiCisJCQkgICJzZWxlY3RlZCAtZm9mZmxvYWQtbWVtb3J5IG9wdGlv biIpOworCSAgICAgIGZsYWdfb2ZmbG9hZF9tZW1vcnkgPSBPRkZMT0FEX01FTU9SWV9VTklG SUVEOworCSAgICB9CiAJICBlbHNlIGlmICghc3RyY21wIChwLCAidW5pZmllZF9zaGFyZWRf bWVtb3J5IikpCi0JICB7Ci0JICAgIHRoaXNfcmVxID0gT01QX1JFUVVJUkVTX1VOSUZJRURf U0hBUkVEX01FTU9SWTsKLQotCSAgICBpZiAoZmxhZ19vZmZsb2FkX21lbW9yeSAhPSBPRkZM T0FEX01FTU9SWV9VTklGSUVECi0JCSYmIGZsYWdfb2ZmbG9hZF9tZW1vcnkgIT0gT0ZGTE9B RF9NRU1PUllfTk9ORSkKLQkgICAgICBlcnJvcl9hdCAoY2xvYywKLQkJCSJ1bmlmaWVkX3No YXJlZF9tZW1vcnkgaXMgaW5jb21wYXRpYmxlIHdpdGggdGhlICIKLQkJCSJzZWxlY3RlZCAt Zm9mZmxvYWQtbWVtb3J5IG9wdGlvbiIpOwotCSAgICBmbGFnX29mZmxvYWRfbWVtb3J5ID0g T0ZGTE9BRF9NRU1PUllfVU5JRklFRDsKLQkgIH0KKwkgICAgeworCSAgICAgIHRoaXNfcmVx ID0gT01QX1JFUVVJUkVTX1VOSUZJRURfU0hBUkVEX01FTU9SWTsKKworCSAgICAgIGlmIChm bGFnX29mZmxvYWRfbWVtb3J5ICE9IE9GRkxPQURfTUVNT1JZX1VOSUZJRUQKKwkJICAmJiBm bGFnX29mZmxvYWRfbWVtb3J5ICE9IE9GRkxPQURfTUVNT1JZX05PTkUpCisJCWVycm9yX2F0 IChjbG9jLAorCQkJICAidW5pZmllZF9zaGFyZWRfbWVtb3J5IGlzIGluY29tcGF0aWJsZSB3 aXRoIHRoZSAiCisJCQkgICJzZWxlY3RlZCAtZm9mZmxvYWQtbWVtb3J5IG9wdGlvbiIpOwor CSAgICAgIGZsYWdfb2ZmbG9hZF9tZW1vcnkgPSBPRkZMT0FEX01FTU9SWV9VTklGSUVEOwor CSAgICB9CiAJICBlbHNlIGlmICghc3RyY21wIChwLCAiZHluYW1pY19hbGxvY2F0b3JzIikp CiAJICAgIHRoaXNfcmVxID0gT01QX1JFUVVJUkVTX0RZTkFNSUNfQUxMT0NBVE9SUzsKIAkg IGVsc2UgaWYgKCFzdHJjbXAgKHAsICJyZXZlcnNlX29mZmxvYWQiKSkKZGlmZiAtLWdpdCBh L2djYy9mb3J0cmFuL29wZW5tcC5jIGIvZ2NjL2ZvcnRyYW4vb3Blbm1wLmMKaW5kZXggYWM0 MTI2YmQ3ZWEuLmVjZTA0YzAzYTY4IDEwMDY0NAotLS0gYS9nY2MvZm9ydHJhbi9vcGVubXAu YworKysgYi9nY2MvZm9ydHJhbi9vcGVubXAuYwpAQCAtNTU0Niw2ICs1NTQ2LDEyIEBAIGdm Y19tYXRjaF9vbXBfcmVxdWlyZXMgKHZvaWQpCiAJICByZXF1aXJlc19jbGF1c2UgPSBPTVBf UkVRX1VOSUZJRURfQUREUkVTUzsKIAkgIGlmIChyZXF1aXJlc19jbGF1c2VzICYgT01QX1JF UV9VTklGSUVEX0FERFJFU1MpCiAJICAgIGdvdG8gZHVwbGljYXRlX2NsYXVzZTsKKworCSAg aWYgKGZsYWdfb2ZmbG9hZF9tZW1vcnkgIT0gT0ZGTE9BRF9NRU1PUllfVU5JRklFRAorCSAg ICAgICYmIGZsYWdfb2ZmbG9hZF9tZW1vcnkgIT0gT0ZGTE9BRF9NRU1PUllfTk9ORSkKKwkg ICAgZ2ZjX2Vycm9yX25vdyAoInVuaWZpZWRfYWRkcmVzcyBhdCAlQyBpcyBpbmNvbXBhdGli bGUgd2l0aCAiCisJCQkgICAidGhlIHNlbGVjdGVkIC1mb2ZmbG9hZC1tZW1vcnkgb3B0aW9u Iik7CisJICBmbGFnX29mZmxvYWRfbWVtb3J5ID0gT0ZGTE9BRF9NRU1PUllfVU5JRklFRDsK IAl9CiAgICAgICBlbHNlIGlmIChnZmNfbWF0Y2ggKGNsYXVzZXNbMl0pID09IE1BVENIX1lF UykKIAl7CmRpZmYgLS1naXQgYS9nY2Mvb21wLWxvdy5jIGIvZ2NjL29tcC1sb3cuYwppbmRl eCA0NjUzMzcwYWE0MS4uY2UzMGY1M2RiYjUgMTAwNjQ0Ci0tLSBhL2djYy9vbXAtbG93LmMK KysrIGIvZ2NjL29tcC1sb3cuYwpAQCAtMTYwMDgsNyArMTYwMDgsOCBAQCBwdWJsaWM6CiAg IHsKICAgICByZXR1cm4gKGZsYWdfb3Blbm1wIHx8IGZsYWdfb3Blbm1wX3NpbWQpCiAJICAg ICYmIChmbGFnX29mZmxvYWRfbWVtb3J5ID09IE9GRkxPQURfTUVNT1JZX1VOSUZJRUQKLQkJ fHwgb21wX3JlcXVpcmVzX21hc2sgJiBPTVBfUkVRVUlSRVNfVU5JRklFRF9TSEFSRURfTUVN T1JZKTsKKwkJfHwgb21wX3JlcXVpcmVzX21hc2sgJiBPTVBfUkVRVUlSRVNfVU5JRklFRF9T SEFSRURfTUVNT1JZCisJCXx8IG9tcF9yZXF1aXJlc19tYXNrICYgT01QX1JFUVVJUkVTX1VO SUZJRURfQUREUkVTUyk7CiAgIH0KICAgdmlydHVhbCB1bnNpZ25lZCBpbnQgZXhlY3V0ZSAo ZnVuY3Rpb24gKikKICAgewpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21t b24vZ29tcC91c20tNC5jIGIvZ2NjL3Rlc3RzdWl0ZS9jLWMrKy1jb21tb24vZ29tcC91c20t NC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5iMTk2NjRlOWI2 NgotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvYy1jKystY29tbW9uL2dvbXAv dXNtLTQuYwpAQCAtMCwwICsxLDQgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7 IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLWZvZmZsb2FkLW1lbW9yeT1waW5uZWQiIH0gKi8K KworI3ByYWdtYSBvbXAgcmVxdWlyZXMgdW5pZmllZF9hZGRyZXNzICAgICAgICAvKiB7IGRn LWVycm9yICJ1bmlmaWVkX2FkZHJlc3MgaXMgaW5jb21wYXRpYmxlIHdpdGggdGhlIHNlbGVj dGVkIC1mb2ZmbG9hZC1tZW1vcnkgb3B0aW9uIiB9ICovCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2dmb3J0cmFuLmRnL2dvbXAvdXNtLTQuZjkwIGIvZ2NjL3Rlc3RzdWl0ZS9nZm9y dHJhbi5kZy9nb21wL3VzbS00LmY5MApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uNzI1YjA3ZjJmODgKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRl L2dmb3J0cmFuLmRnL2dvbXAvdXNtLTQuZjkwCkBAIC0wLDAgKzEsNiBAQAorISB7IGRnLWRv IGNvbXBpbGUgfQorISB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLWZvZmZsb2FkLW1lbW9y eT1waW5uZWQiIH0KKworISRvbXAgcmVxdWlyZXMgdW5pZmllZF9hZGRyZXNzICAhIHsgZGct ZXJyb3IgInVuaWZpZWRfYWRkcmVzcyBhdCAuKiBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUg c2VsZWN0ZWQgLWZvZmZsb2FkLW1lbW9yeSBvcHRpb24iIH0KKworZW5kCg== --------------jZOokMJkKU3w0M8c2W073StA--