From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/8050 Path: news.gmane.org!not-for-mail From: Alexander Monakov Newsgroups: gmane.linux.lib.musl.general Subject: Re: [PATCH v2 4/6] dynlink.c: pass gnu-hash table pointer to gnu_lookup Date: Sun, 28 Jun 2015 03:05:25 +0300 (MSK) Message-ID: References: <1435101895-18240-1-git-send-email-amonakov@ispras.ru> <1435448915-28419-1-git-send-email-amonakov@ispras.ru> <1435448915-28419-5-git-send-email-amonakov@ispras.ru> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="168458499-530983983-1435449925=:20522" X-Trace: ger.gmane.org 1435449938 11116 80.91.229.3 (28 Jun 2015 00:05:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 28 Jun 2015 00:05:38 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-8063-gllmg-musl=m.gmane.org@lists.openwall.com Sun Jun 28 02:05:38 2015 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1Z906L-0005Kw-Qd for gllmg-musl@m.gmane.org; Sun, 28 Jun 2015 02:05:37 +0200 Original-Received: (qmail 1896 invoked by uid 550); 28 Jun 2015 00:05:36 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 1878 invoked from network); 28 Jun 2015 00:05:36 -0000 In-Reply-To: <1435448915-28419-5-git-send-email-amonakov@ispras.ru> User-Agent: Alpine 2.11 (LNX 23 2013-08-11) Xref: news.gmane.org gmane.linux.lib.musl.general:8050 Archived-At: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --168458499-530983983-1435449925=:20522 Content-Type: TEXT/PLAIN; charset=US-ASCII Rich, here's a version of your bench that should test latency rather than throughput of the umod operation, with random divisors. >From my testing it looks like your version with 64-bit add is clearly better on 64-bit, but loses on 32-bit unless 'add' is made a 64-bit field. An advantage of 'saturating add' is that it doesn't need extra space ('inc' is 1 byte rather than 4, which are required for 'add'). Alexander --168458499-530983983-1435449925=:20522 Content-Type: TEXT/x-c; name=umod-bench.c Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=umod-bench.c I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RkbGliLmg+DQojaW5j bHVkZSA8c3RkaW50Lmg+DQojaW5jbHVkZSA8dGltZS5oPg0KDQpzdHJ1Y3Qg dWRpdiB7DQoJdWludDY0X3QgYWRkOw0KCXVpbnQzMl90IG11bDsNCglpbnQg czEsIHMyLCBpbmM7DQp9Ow0KDQpzdGF0aWMgdm9pZCBwcmVjb21wdXRlX3Vk aXYodWludDMyX3QgZGl2LCBzdHJ1Y3QgdWRpdiAqcCkNCnsNCglpbnQgczJf YWRqID0gKHNpemVvZihsb25nKT09OCkgPyAzMiA6IDA7DQoJaWYgKCEoZGl2 JihkaXYtMSkpKSB7DQoJCWlmIChzaXplb2YobG9uZykgPT0gOCkgew0KCQkJ cC0+czEgPSAwOw0KCQkJcC0+bXVsID0gMTsNCgkJCXAtPmFkZCA9IDA7DQoJ CQlmb3IgKHAtPnMyPTA7IGRpdj4xOyBkaXY+Pj0xLCBwLT5zMisrKTsNCgkJ fSBlbHNlIGlmIChkaXYgPT0gMSkgew0KCQkJcC0+czEgPSAwOw0KCQkJcC0+ czIgPSAwOw0KCQkJcC0+bXVsID0gMHhmZmZmZmZmZjsNCgkJCXAtPmFkZCA9 IDB4ZmZmZmZmZmY7DQoJCX0gZWxzZSB7DQoJCQlwLT5zMSA9IDA7DQoJCQlw LT5tdWwgPSAweDgwMDAwMDAwOw0KCQkJcC0+YWRkID0gMDsNCgkJCWZvciAo cC0+czI9MDsgZGl2PjI7IGRpdj4+PTEsIHAtPnMyKyspOw0KCQl9DQoJCXJl dHVybjsNCgl9DQoJaW50IGJpdHMgPSAwOw0KYWdhaW46DQoJcC0+czEgPSBi aXRzOw0KCXVpbnQzMl90IHRtcCA9IDF1PDwzMSwgcXVvID0gdG1wL2Rpdiwg cmVtID0gdG1wJWRpdjsNCg0KCWludCBsb2c9MDsNCgl0bXA9ZGl2OyBkbyBs b2crKzsgd2hpbGUgKHRtcD4+PTEpOw0KDQoJaW50IGV4cCwgcmRzaGY7DQoJ dWludDMyX3QgcG93LCByZG11bD0wOw0KCWZvciAoZXhwPTAsIHBvdz0xdTw8 Yml0czsgOyBleHArKywgcG93PDw9MSkgew0KCQlpbnQgb3ZmID0gcmVtID49 IGRpdiAtIHJlbTsNCgkJcXVvICo9IDI7IHJlbSAqPSAyOw0KCQlpZiAob3Zm KSBxdW8rKywgcmVtIC09IGRpdjsNCg0KCQlpZiAoZXhwID49IGxvZy1iaXRz IHx8IGRpdi1yZW0gPD0gcG93KQ0KCQkJYnJlYWs7DQoNCgkJaWYgKCFyZG11 bCAmJiByZW0gPD0gcG93KQ0KCQkJcmRtdWwgPSBxdW8sIHJkc2hmID0gZXhw Ow0KCX0NCglpZiAoZXhwIDwgbG9nKSB7DQoJCXAtPm11bCA9IHF1bysxOw0K CQlwLT5zMiAgPSBleHAgKyBzMl9hZGo7DQoJCXAtPmluYyA9IDA7DQoJCXAt PmFkZCA9IDA7DQoJfSBlbHNlIGlmIChkaXYgJiAxKSB7DQoJCXAtPm11bCA9 IHJkbXVsOw0KCQlwLT5zMiAgPSByZHNoZiArIHMyX2FkajsNCgkJcC0+aW5j ID0gMTsNCgkJcC0+YWRkID0gcmRtdWw7DQoJfSBlbHNlIHsNCgkJZG8gYml0 cysrOyB3aGlsZSAoISgoZGl2ID4+PSAxKSAmIDEpKTsNCgkJZ290byBhZ2Fp bjsNCgl9DQp9DQoNCnN0YXRpYyB1aW50MzJfdCB1bW9kKHVpbnQzMl90IHgs IHVpbnQzMl90IGRpdiwgc3RydWN0IHVkaXYgKnApDQp7DQojaWYgMA0KCWlu dCBzMzIgPSAoc2l6ZW9mKGxvbmcpPT04KSA/IDAgOiAzMjsNCglyZXR1cm4g eCAtICgodW5zaWduZWQgbG9uZykoMXVsbCAqICh4Pj5wLT5zMSkgKiBwLT5t dWwgKyBwLT5hZGQgPj4gczMyKSA+PiBwLT5zMikqZGl2Ow0KI2VsaWYgMA0K CWludCBzMzIgPSAoc2l6ZW9mKGxvbmcpPT04KSA/IDAgOiAzMjsNCgl1aW50 MzJfdCB2ID0geDsNCgl2ID4+PSBwLT5zMTsNCglpZiAodiE9LTEpIHYgKz0g cC0+aW5jOw0KCXYgPSAodW5zaWduZWQgbG9uZykoKDF1bGwgKiB2ICogcC0+ bXVsKSA+PiBzMzIpID4+IHAtPnMyOw0KCXJldHVybiB4LXYqZGl2Ow0KI2Vs c2UNCglpZiAoIShkaXYmKGRpdi0xKSkpDQoJCXJldHVybiB4JihkaXYtMSk7 DQoJdWludDMyX3QgdiA9IHg7DQoJdiA+Pj0gcC0+czE7DQoJaWYgKHYgKyBw LT5pbmMpIHYgKz0gcC0+aW5jOw0KCWludCBzMzI9MzIsIHMyPXAtPnMyOw0K CWlmIChzaXplb2YobG9uZykgPT0gOCkNCgkJczMyPXMyLCBzMj0wOw0KCXYg PSAoMXVsbCAqIHYgKiBwLT5tdWwpID4+IHMzMjsNCgl2ID4+PSBzMjsNCgly ZXR1cm4geC12KmRpdjsNCiNlbmRpZg0KfQ0KDQojZGVmaW5lIE4gMTAwMDAw MA0KDQp1aW50MzJfdCBleHRfdW1vZCh1aW50MzJfdCB4LCB1aW50MzJfdCBk aXYsIHN0cnVjdCB1ZGl2ICpwKQ0Kew0KCXJldHVybiB1bW9kKHgsIGRpdiwg cCk7DQp9DQoNCmludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikNCnsN CglzaXplX3QgaTsNCglzdHJ1Y3QgdGltZXNwZWMgdDAsIHQ7DQoJdWludDMy X3QgKmEgPSBjYWxsb2MoTiwgc2l6ZW9mICphKTsNCglmb3IgKGk9MDsgaTxO OyBpKyspIGFbaV0gPSAyK3JhbmQoKTsNCglzdHJ1Y3QgdWRpdiAqdWQgPSBj YWxsb2MoTiwgc2l6ZW9mICp1ZCk7DQoJZm9yIChpPTA7IGk8TjsgaSsrKSBw cmVjb21wdXRlX3VkaXYoYVtpXSwgdWQraSk7DQoJdWludDMyX3QgYWNjdW0s IHZhbDsNCg0KCWNsb2NrX2dldHRpbWUoQ0xPQ0tfUkVBTFRJTUUsICZ0MCk7 DQoJZm9yIChhY2N1bT1pPTAsIHZhbD0tMTsgaTxOOyBpKyspIGFjY3VtICs9 ICh2YWwgJT0gYVtpXSk7DQoJY2xvY2tfZ2V0dGltZShDTE9DS19SRUFMVElN RSwgJnQpOw0KCXQudHZfc2VjIC09IHQwLnR2X3NlYzsNCglpZiAoKHQudHZf bnNlYyAtPSB0MC50dl9uc2VjKSA8IDApIHsNCgkJdC50dl9uc2VjICs9IDEw MDAwMDAwMDA7DQoJCXQudHZfc2VjLS07DQoJfQ0KCXByaW50ZigiJWx1ICVs bGQuJS45bGRcbiIsICh1bnNpZ25lZCBsb25nKWFjY3VtLCAobG9uZyBsb25n KXQudHZfc2VjLCB0LnR2X25zZWMpOw0KDQoJY2xvY2tfZ2V0dGltZShDTE9D S19SRUFMVElNRSwgJnQwKTsNCglmb3IgKGFjY3VtPWk9MCwgdmFsPS0xOyBp PE47IGkrKykgYWNjdW0gKz0gKHZhbCA9IHVtb2QodmFsLCBhW2ldLCB1ZCtp KSk7DQoJY2xvY2tfZ2V0dGltZShDTE9DS19SRUFMVElNRSwgJnQpOw0KCXQu dHZfc2VjIC09IHQwLnR2X3NlYzsNCglpZiAoKHQudHZfbnNlYyAtPSB0MC50 dl9uc2VjKSA8IDApIHsNCgkJdC50dl9uc2VjICs9IDEwMDAwMDAwMDA7DQoJ CXQudHZfc2VjLS07DQoJfQ0KCXByaW50ZigiJWx1ICVsbGQuJS45bGRcbiIs ICh1bnNpZ25lZCBsb25nKWFjY3VtLCAobG9uZyBsb25nKXQudHZfc2VjLCB0 LnR2X25zZWMpOw0KCXJldHVybiAwOw0KfQ0K --168458499-530983983-1435449925=:20522--