From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id 2C832386F825 for ; Tue, 29 Sep 2020 15:23:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 2C832386F825 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08TF7LiA193712 for ; Tue, 29 Sep 2020 11:23:25 -0400 Received: from ppma03dal.us.ibm.com (b.bd.3ea9.ip4.static.sl-reverse.com [169.62.189.11]) by mx0a-001b2d01.pphosted.com with ESMTP id 33v79k0ma7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 29 Sep 2020 11:23:25 -0400 Received: from pps.filterd (ppma03dal.us.ibm.com [127.0.0.1]) by ppma03dal.us.ibm.com (8.16.0.42/8.16.0.42) with SMTP id 08TFD7bH012624 for ; Tue, 29 Sep 2020 15:23:24 GMT Received: from b01cxnp22033.gho.pok.ibm.com (b01cxnp22033.gho.pok.ibm.com [9.57.198.23]) by ppma03dal.us.ibm.com with ESMTP id 33sw99chcb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 29 Sep 2020 15:23:24 +0000 Received: from b01ledav004.gho.pok.ibm.com (b01ledav004.gho.pok.ibm.com [9.57.199.109]) by b01cxnp22033.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 08TFNN8435062076 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 29 Sep 2020 15:23:23 GMT Received: from b01ledav004.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CE660112062 for ; Tue, 29 Sep 2020 15:23:23 +0000 (GMT) Received: from b01ledav004.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3AAF6112061 for ; Tue, 29 Sep 2020 15:23:23 +0000 (GMT) Received: from [9.163.14.40] (unknown [9.163.14.40]) by b01ledav004.gho.pok.ibm.com (Postfix) with ESMTP for ; Tue, 29 Sep 2020 15:23:22 +0000 (GMT) Subject: Re: [PATCH v3 2/2] powerpc: Add optimized stpncpy for POWER9 To: libc-alpha@sourceware.org References: <20200929152103.18564-1-rzinsly@linux.ibm.com> <20200929152103.18564-2-rzinsly@linux.ibm.com> From: Raphael M Zinsly Message-ID: Date: Tue, 29 Sep 2020 12:23:21 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <20200929152103.18564-2-rzinsly@linux.ibm.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-29_07:2020-09-29, 2020-09-29 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 priorityscore=1501 lowpriorityscore=0 suspectscore=1 phishscore=0 impostorscore=0 mlxlogscore=701 mlxscore=0 adultscore=0 malwarescore=0 clxscore=1015 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009290133 X-Spam-Status: No, score=-5.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, KAM_NUMSUBJECT, NICE_REPLY_A, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Sep 2020 15:23:27 -0000 generic_stpncpy __stpncpy_power9 __stpncpy_power8 __stpncpy_power7 __stpncpy_ppc Length 16, n 16, alignment 1/ 1: 7.04141 2.66905 2.71071 5.33257 9.45193 Length 16, n 16, alignment 1/ 1: 7.01728 2.54349 2.70763 5.35555 9.40601 Length 16, n 16, alignment 1/ 2: 6.76331 2.56894 2.70649 5.28715 9.19534 Length 16, n 16, alignment 2/ 1: 6.41285 2.52953 2.86392 5.25868 9.24343 Length 2, n 4, alignment 7/ 2: 7.76627 2.36037 4.34749 4.05757 8.45648 Length 4, n 2, alignment 2/ 7: 6.15257 1.734 2.66932 2.81884 6.61486 Length 2, n 4, alignment 7/ 2: 7.69004 2.34779 3.90224 4.08693 8.51617 Length 4, n 2, alignment 2/ 7: 6.14888 1.73738 2.66929 2.81777 6.39066 Length 16, n 16, alignment 2/ 2: 7.25765 2.5434 2.8759 4.7084 9.43171 Length 16, n 16, alignment 2/ 2: 6.41274 2.52681 2.87939 5.2894 9.2505 Length 16, n 16, alignment 2/ 4: 6.74797 2.6683 2.82869 5.27608 9.43391 Length 16, n 16, alignment 4/ 2: 7.6281 2.54368 3.52982 5.26862 8.7369 Length 4, n 8, alignment 6/ 4: 7.79233 2.33099 5.64785 4.21131 9.03 Length 8, n 4, alignment 4/ 6: 6.01824 1.73782 2.81779 2.81777 7.90004 Length 4, n 8, alignment 6/ 4: 7.94851 2.33098 4.90456 3.75698 8.89379 Length 8, n 4, alignment 4/ 6: 6.0183 1.73715 2.81777 2.41521 7.83867 Length 16, n 16, alignment 3/ 3: 6.93178 2.66854 3.22004 5.31673 9.09542 Length 16, n 16, alignment 3/ 3: 6.99998 2.67084 3.22862 5.48294 9.2366 Length 16, n 16, alignment 3/ 6: 7.14689 2.6615 3.21888 5.25964 9.1277 Length 16, n 16, alignment 6/ 3: 6.46654 2.65885 4.57873 5.25391 7.75507 Length 8, n 16, alignment 5/ 6: 7.37286 2.33316 3.92971 4.50331 10.1496 Length 16, n 8, alignment 6/ 5: 5.73663 1.87991 2.633 4.09291 5.91732 Length 8, n 16, alignment 5/ 6: 7.77512 2.33361 3.67636 4.50091 10.147 Length 16, n 8, alignment 6/ 5: 5.73662 1.88001 2.57119 4.10496 6.15016 Length 16, n 16, alignment 4/ 4: 7.55115 2.65827 3.5838 5.25628 8.81586 Length 16, n 16, alignment 4/ 4: 7.61232 2.66851 3.62508 5.32044 8.73914 Length 16, n 16, alignment 4/ 0: 7.54588 2.54345 3.48987 5.27812 8.77989 Length 16, n 16, alignment 0/ 4: 6.82387 1.88425 2.41569 5.27746 7.19847 Length 16, n 32, alignment 4/ 0: 10.1135 3.10868 6.01894 6.66693 11.7681 Length 32, n 16, alignment 0/ 4: 6.93527 1.8793 2.4162 5.29155 6.50752 Length 16, n 32, alignment 4/ 0: 10.1565 3.16134 5.78062 6.81425 11.2226 Length 32, n 16, alignment 0/ 4: 6.76758 1.87928 2.41649 5.30161 7.22291 Length 16, n 16, alignment 5/ 5: 7.22753 2.56593 4.22659 5.30415 9.86703 Length 16, n 16, alignment 5/ 5: 6.76256 2.54348 4.23108 5.43866 9.53557 Length 16, n 16, alignment 5/ 2: 7.23702 2.52833 4.23011 5.26711 9.52126 Length 16, n 16, alignment 2/ 5: 6.68084 2.66311 2.84314 5.2709 9.24495 Length 32, n 64, alignment 3/ 2: 12.4989 3.84198 6.40671 10.4545 14.317 Length 64, n 32, alignment 2/ 3: 10.1464 2.78457 3.17933 7.67569 12.4356 Length 32, n 64, alignment 3/ 2: 12.4991 3.83968 7.08471 10.451 15.8984 Length 64, n 32, alignment 2/ 3: 9.61285 2.78401 3.18834 7.66606 13.9602 Length 16, n 16, alignment 6/ 6: 7.24557 2.66839 4.55951 5.25563 7.7369 Length 16, n 16, alignment 6/ 6: 6.76327 2.65836 4.5127 5.63264 7.80333 Length 16, n 16, alignment 6/ 4: 7.15127 2.54397 4.57355 5.32957 7.51005 Length 16, n 16, alignment 4/ 6: 7.51733 2.5615 3.67299 5.31244 8.73893 Length 64, n 128, alignment 2/ 4: 14.0745 4.98021 7.33878 11.4384 17.1572 Length 128, n 64, alignment 4/ 2: 11.7179 3.59088 4.89414 10.2021 11.6637 Length 64, n 128, alignment 2/ 4: 14.0841 4.99105 7.28507 11.4365 21.7537 Length 128, n 64, alignment 4/ 2: 11.7142 3.59211 4.83864 9.87632 19.4664 Length 16, n 16, alignment 7/ 7: 7.12738 2.53533 5.62213 5.30017 7.90888 Length 16, n 16, alignment 7/ 7: 6.82635 2.53529 5.60694 5.27111 8.88482 Length 16, n 16, alignment 7/ 6: 6.9193 2.54376 5.48117 5.24785 8.04263 Length 16, n 16, alignment 6/ 7: 6.89261 2.55078 4.51003 5.32471 7.81768 Length 128, n 256, alignment 1/ 6: 16.2686 7.68983 9.35727 16.2843 19.8458 Length 256, n 128, alignment 6/ 1: 13.4356 4.94899 7.94404 15.0122 15.0231 Length 128, n 256, alignment 1/ 6: 16.2511 7.69025 9.35528 16.2859 37.8453 Length 256, n 128, alignment 6/ 1: 13.4332 4.94446 8.02757 12.2879 34.1949 Length 8, n 16, alignment 0/ 0: 7.26102 2.33285 3.75702 3.85762 7.72869 Length 32, n 16, alignment 0/ 0: 7.049 1.88689 2.42187 2.41537 6.58192 Length 8, n 16, alignment 7/ 2: 8.09344 2.31269 3.67403 4.31612 8.21018 Length 32, n 16, alignment 7/ 2: 6.822 2.45733 5.59593 5.33252 6.53496 Length 16, n 32, alignment 0/ 0: 9.99648 3.36432 4.70547 4.55746 10.148 Length 64, n 32, alignment 0/ 0: 7.89408 2.4309 2.58854 2.70519 8.89171 Length 16, n 32, alignment 6/ 4: 9.31969 3.15547 7.24937 9.47362 10.0091 Length 64, n 32, alignment 6/ 4: 9.91687 2.78234 4.64259 7.00062 10.5972 Length 32, n 64, alignment 0/ 0: 11.0651 3.81484 4.4379 4.91663 11.8363 Length 128, n 64, alignment 0/ 0: 9.25821 3.20129 3.55296 4.22664 9.63556 Length 32, n 64, alignment 5/ 6: 12.5097 3.83422 7.29892 9.09849 13.2517 Length 128, n 64, alignment 5/ 6: 11.6165 3.60246 5.35542 8.90704 13.3207 Length 64, n 128, alignment 0/ 0: 12.372 4.91681 5.41951 6.91629 15.0813 Length 256, n 128, alignment 0/ 0: 7.93075 4.5247 6.29502 5.58357 12.5963 Length 64, n 128, alignment 4/ 0: 12.569 5.00092 7.25225 10.4764 15.9366 Length 256, n 128, alignment 4/ 0: 12.2963 4.90654 7.57109 12.0953 16.7672 Length 128, n 256, alignment 0/ 0: 13.9015 7.34814 7.88738 9.15353 19.4141 Length 512, n 256, alignment 0/ 0: 10.6865 6.52749 9.15011 9.71701 20.9021 Length 128, n 256, alignment 3/ 2: 16.3681 7.53318 9.89911 18.5309 20.8335 Length 512, n 256, alignment 3/ 2: 17.0249 7.10063 10.1568 22.6063 25.1262 Length 256, n 512, alignment 0/ 0: 16.5169 12.3406 13.6056 14.5875 29.2826 Length 1024, n 512, alignment 0/ 0: 16.3619 10.8422 16.7061 17.1025 37.7908 Length 256, n 512, alignment 2/ 4: 21.162 12.9621 14.3306 26.0856 30.0397 Length 1024, n 512, alignment 2/ 4: 25.5543 11.9978 17.7424 42.4293 47.7581 Length 512, n 1024, alignment 0/ 0: 20.5504 17.3132 19.5751 21.3633 42.7215 Length 2048, n 1024, alignment 0/ 0: 28.5197 19.3708 37.1801 35.3122 67.9792 Length 512, n 1024, alignment 1/ 6: 29.9875 17.7823 22.3228 47.3516 51.3697 Length 2048, n 1024, alignment 1/ 6: 42.9443 21.6004 38.7767 78.1732 83.9784