From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from esa1.mentor.iphmx.com (esa1.mentor.iphmx.com [68.232.129.153]) by sourceware.org (Postfix) with ESMTPS id 5457E3857733 for ; Mon, 10 Jul 2023 22:07:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5457E3857733 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="6.01,195,1684828800"; d="diff'?scan'208";a="12905756" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa1.mentor.iphmx.com with ESMTP; 10 Jul 2023 14:07:59 -0800 IronPort-SDR: FKebXwOHgrLZZbdaKrUUGD5bb4mtQEKxTBqpiqysMagJ5SP/+Wu7LUDaVE56MFasa3O+eq4ygQ c7dnAqsN5Fb2cXwwtOCIbJCVIb9pLMNIdRGQh9+tRn7lrzVA2K9JXElNoXKOHgdqNmSvOWha8z 3y1uBe/Dyc3aXwaT8bPX/9meImglDRbam6djCjzGSvoRIuDMg1yOx87TVkazC7IW7KvzCoplN8 iIGrPyKnTMQi7BTvfaDr8yHTA9gEiQjn0PKAE2GIDgg5VhejRnNxF9JflvF/UPPRIMOCjevbRx NEk= Content-Type: multipart/mixed; boundary="------------A90HXY9U160WPVNvMrg9124X" Message-ID: <59099ed8-3e38-9532-f8ba-e776c356c3a0@codesourcery.com> Date: Tue, 11 Jul 2023 00:07:39 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Content-Language: en-US To: Jakub Jelinek , gcc-patches From: Tobias Burnus Subject: [Patch] libgomp: Update OpenMP memory allocation doc, fix omp_high_bw_mem_space X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-14.mgc.mentorg.com (139.181.222.14) To svr-ies-mbx-12.mgc.mentorg.com (139.181.222.12) X-Spam-Status: No, score=-11.3 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.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --------------A90HXY9U160WPVNvMrg9124X Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: quoted-printable I noted that all memory spaces are supported, some by falling back to the default ("malloc") - except for omp_high_bw_mem_space (unless the memkind lib is available). I think it makes more sense to fallback to 'malloc' also for omp_high_bw_mem_space. Additionally, I updated the documentation to more explicitly state what the current implementation is. Thoughts? Wording improvement suggestions? Tobias PS: I wonder whether it makes sense to use use libnuma besides libmemkind (which depends on libnuma); however, the question is when. libnuma provides numa_alloc_interleaved(_subset), numa_alloc_local and numa_alloc_onnode. In any case, something is odd here. I have two nodes, 0 and 1 (=E2=86=92 'lscpu') and 'numactls --show' shows "preferred node: current". I allocate memory and then use the following to find the node: "get_mempolicy (&node, NULL, 0, ptr, MPOL_F_ADDR|MPOL_F_NODE)" Result: With malloc'ed data, it shows the same node as the node running the code (i.e. the same as 'getcpu (NULL, &node1);' =3D=3D 'numa_node_of_cpu (sched_getcpu());'). But I get a constant result of 1 for numa_alloc_local and numa_alloc_onnode, independent of the passed node number (0 or 1) and on the CPU the thread runs on. ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstra=C3=9Fe 201= , 80634 M=C3=BCnchen; Gesellschaft mit beschr=C3=A4nkter Haftung; Gesch=C3= =A4ftsf=C3=BChrer: Thomas Heurung, Frank Th=C3=BCrauf; Sitz der Gesellschaf= t: M=C3=BCnchen; Registergericht M=C3=BCnchen, HRB 106955 --------------A90HXY9U160WPVNvMrg9124X Content-Type: text/x-patch; charset="UTF-8"; name="allocator.diff" Content-Disposition: attachment; filename="allocator.diff" Content-Transfer-Encoding: base64 bGliZ29tcDogVXBkYXRlIE9wZW5NUCBtZW1vcnkgYWxsb2NhdGlvbiBkb2MsIGZpeCBvbXBf aGlnaF9id19tZW1fc3BhY2UKCmxpYmdvbXAvQ2hhbmdlTG9nOgoKCSogYWxsb2NhdG9yLmMg KG9tcF9pbml0X2FsbG9jYXRvcik6IFVzZSBtYWxsb2MgZm9yCglvbXBfaGlnaF9id19tZW1f c3BhY2Ugd2hlbiB0aGUgbWVta2luZCBsaWIgaXMgdW5hdmFpbGFibGUgaW5zdGVhZAoJb2Yg cmV0dXJuaW5nIG9tcF9udWxsX2FsbG9jYXRvci4KCSogbGliZ29tcC50ZXhpIChNZW1vcnkg YWxsb2NhdGlvbiB3aXRoIGxpYm1lbWtpbmQpOiBEb2N1bWVudAoJaW1wbGVtZW50YXRpb24g aW4gbW9yZSBkZXRhaWxzLgoKIGxpYmdvbXAvYWxsb2NhdG9yLmMgIHwgIDIgKy0KIGxpYmdv bXAvbGliZ29tcC50ZXhpIHwgMjYgKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDIgZmls ZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9saWJnb21wL2FsbG9jYXRvci5jIGIvbGliZ29tcC9hbGxvY2F0b3IuYwppbmRleCBj NDk5MzFjYmFkNC4uMjVjMGYxNTAzMDIgMTAwNjQ0Ci0tLSBhL2xpYmdvbXAvYWxsb2NhdG9y LmMKKysrIGIvbGliZ29tcC9hbGxvY2F0b3IuYwpAQCAtMzAxLDcgKzMwMSw3IEBAIG9tcF9p bml0X2FsbG9jYXRvciAob21wX21lbXNwYWNlX2hhbmRsZV90IG1lbXNwYWNlLCBpbnQgbnRy YWl0cywKIAkgIGJyZWFrOwogCX0KICNlbmRpZgotICAgICAgcmV0dXJuIG9tcF9udWxsX2Fs bG9jYXRvcjsKKyAgICAgIGJyZWFrOwogICAgIGNhc2Ugb21wX2xhcmdlX2NhcF9tZW1fc3Bh Y2U6CiAjaWZkZWYgTElCR09NUF9VU0VfTUVNS0lORAogICAgICAgbWVta2luZF9kYXRhID0g Z29tcF9nZXRfbWVta2luZCAoKTsKZGlmZiAtLWdpdCBhL2xpYmdvbXAvbGliZ29tcC50ZXhp IGIvbGliZ29tcC9saWJnb21wLnRleGkKaW5kZXggN2QyN2NjNTBkZjUuLmIxZjU4ZTc0OTAz IDEwMDY0NAotLS0gYS9saWJnb21wL2xpYmdvbXAudGV4aQorKysgYi9saWJnb21wL2xpYmdv bXAudGV4aQpAQCAtNDYzNCw2ICs0NjM0LDE3IEBAIHNtYWxsZXIgbnVtYmVyLiAgT24gbm9u LWhvc3QgZGV2aWNlcywgdGhlIHZhbHVlIG9mIHRoZQogQG5vZGUgTWVtb3J5IGFsbG9jYXRp b24gd2l0aCBsaWJtZW1raW5kCiBAc2VjdGlvbiBNZW1vcnkgYWxsb2NhdGlvbiB3aXRoIGxp Ym1lbWtpbmQKIAorRm9yIHRoZSBtZW1vcnkgc3BhY2VzLCB0aGUgZm9sbG93aW5nIGFwcGxp ZXM6CitAaXRlbWl6ZQorQGl0ZW0gQGNvZGV7b21wX2RlZmF1bHRfbWVtX3NwYWNlfSBpcyBz dXBwb3J0ZWQKK0BpdGVtIEBjb2Rle29tcF9jb25zdF9tZW1fc3BhY2V9IG1hcHMgdG8gQGNv ZGV7b21wX2RlZmF1bHRfbWVtX3NwYWNlfQorQGl0ZW0gQGNvZGV7b21wX2xvd19sYXRfbWVt X3NwYWNlfSBtYXBzIHRvIEBjb2Rle29tcF9kZWZhdWx0X21lbV9zcGFjZX0KK0BpdGVtIEBj b2Rle29tcF9sYXJnZV9jYXBfbWVtX3NwYWNlfSBtYXBzIHRvIEBjb2Rle29tcF9kZWZhdWx0 X21lbV9zcGFjZX0sCisgICAgICB1bmxlc3MgdGhlIG1lbWtpbmQgbGlicmFyeSBpcyBhdmFp bGFibGUKK0BpdGVtIEBjb2Rle29tcF9oaWdoX2J3X21lbV9zcGFjZX0gbWFwcyB0byBAY29k ZXtvbXBfZGVmYXVsdF9tZW1fc3BhY2V9LAorICAgICAgdW5sZXNzIHRoZSBtZW1raW5kIGxp YnJhcnkgaXMgYXZhaWxhYmxlCitAZW5kIGl0ZW1pemUKKwogT24gTGludXggc3lzdGVtcywg d2hlcmUgdGhlIEB1cmVme2h0dHBzOi8vZ2l0aHViLmNvbS9tZW1raW5kL21lbWtpbmQsIG1l bWtpbmQKIGxpYnJhcnl9IChAY29kZXtsaWJtZW1raW5kLnNvLjB9KSBpcyBhdmFpbGFibGUg YXQgcnVudGltZSwgaXQgaXMgdXNlZCB3aGVuCiBjcmVhdGluZyBtZW1vcnkgYWxsb2NhdG9y cyByZXF1ZXN0aW5nCkBAIC00NjQxLDkgKzQ2NTIsMjIgQEAgY3JlYXRpbmcgbWVtb3J5IGFs bG9jYXRvcnMgcmVxdWVzdGluZwogQGl0ZW1pemUKIEBpdGVtIHRoZSBtZW1vcnkgc3BhY2Ug QGNvZGV7b21wX2hpZ2hfYndfbWVtX3NwYWNlfQogQGl0ZW0gdGhlIG1lbW9yeSBzcGFjZSBA Y29kZXtvbXBfbGFyZ2VfY2FwX21lbV9zcGFjZX0KLUBpdGVtIHRoZSBwYXJ0aXRpb24gdHJh aXQgQGNvZGV7b21wX2F0dl9pbnRlcmxlYXZlZH0KK0BpdGVtIHRoZSBwYXJ0aXRpb24gdHJh aXQgQGNvZGV7b21wX2F0dl9pbnRlcmxlYXZlZH07IG5vdGUgdGhhdCBmb3IKKyAgICAgIEBj b2Rle29tcF9sYXJnZV9jYXBfbWVtX3NwYWNlfSB0aGUgYWxsb2NhdGlvbiB3aWxsIG5vdCBi ZSBpbnRlcmxlYXZlZAogQGVuZCBpdGVtaXplCiAKK0FkZGl0aW9uYWwgbm90ZXM6CitAaXRl bWl6ZQorQGl0ZW0gVGhlIEBjb2Rle3Bpbm5lZH0gdHJhaXQgaXMgdW5zdXBwb3J0ZWQuCitA aXRlbSBGb3IgdGhlIEBjb2Rle3BhcnRpdGlvbn0gdHJhaXQsIHRoZSBwYXJ0aXRpb24gcGFy dCBzaXplIHdpbGwgYmUgdGhlIHNhbWUKKyAgICAgIGFzIHRoZSByZXF1ZXN0ZWQgc2l6ZSAo aS5lLiBAY29kZXtpbnRlcmxlYXZlZH0gb3IgQGNvZGV7YmxvY2tlZH0gaGFzIG5vCisgICAg ICBlZmZlY3QpLCBleGNlcHQgZm9yIEBjb2Rle2ludGVybGVhdmVkfSB3aGVuIHRoZSBtZW1r aW5kIGxpYnJhcnkgaXMKKyAgICAgIGF2YWlsYWJsZS4gIEZ1cnRoZXJtb3JlLCBAY29kZXtu ZWFyZXN0fSBtaWdodCBub3QgYWx3YXlzIHJldHVybiBtZW1vcnkKKyAgICAgIG9uIHRoZSBu b2RlIG9mIHRoZSBDUFUgdGhhdCB0cmlnZ2VyZWQgYW4gYWxsb2NhdGlvbi4KK0BpdGVtIFRo ZSBAY29kZXthY2Nlc3N9IHRyYWl0IGhhcyBubyBlZmZlY3Qgc3VjaCB0aGF0IG1lbW9yeSBp cyBhbHdheXMKKyAgICAgIGFjY2Vzc2libGUgYnkgYWxsIHRocmVhZHMuCitAaXRlbSBUaGUg QGNvZGV7c3luY19oaW50fSB0cmFpdCBoYXMgbm8gZWZmZWN0LgorQGVuZCBpdGVtaXplCiAK IEBjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogQGMgT2ZmbG9hZC1UYXJnZXQgU3BlY2lmaWNzCg== --------------A90HXY9U160WPVNvMrg9124X--