From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH] drm/i915: Use SSE4.1 movntdqa to accelerate reads from WC memory Date: Mon, 18 Jul 2016 17:05:29 +0100 Message-ID: <578CFE49.70008@intel.com> References: <20160718100111.GD21839@nuc-i3427.alporthouse.com> <1468836434-29107-1-git-send-email-chris@chris-wilson.co.uk> <578CBA54.40107@linux.intel.com> <20160718113501.GH21839@nuc-i3427.alporthouse.com> <578CC415.202@intel.com> <578CD214.8070703@linux.intel.com> <578CDDA0.3010108@linux.intel.com> <578CF070.50300@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 83AF66E414 for ; Mon, 18 Jul 2016 16:05:31 +0000 (UTC) In-Reply-To: <578CF070.50300@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin , Chris Wilson , intel-gfx@lists.freedesktop.org, Akash Goel , Mika Kuoppala List-Id: intel-gfx@lists.freedesktop.org T24gMTgvMDcvMTYgMTY6MDYsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Cj4gT24gMTgvMDcvMTYg MTQ6NDYsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Cj4gW3NuaXBdCj4KPj4gVGhpcyB2ZXJzaW9u IGdlbmVyYXRlcyB0aGUgc21hbGxlc3QgY29kZToKPj4KPj4gc3RhdGljIHZvaWQgX19tZW1jcHlf bnRkcWEoc3RydWN0IHF3MiAqZHN0LCBjb25zdCBzdHJ1Y3QgcXcyICpzcmMsIHVuc2lnbmVkIGxv bmcgbGVuKQo+PiB7Cj4+IAl1bnNpZ25lZCBsb25nIGw0Owo+Pgo+PiAJa2VybmVsX2ZwdV9iZWdp bigpOwo+Pgo+PiAJbDQgPSBsZW4gLyA0Owo+PiAJd2hpbGUgKGw0KSB7Cj4+IAkJYXNtKCJtb3Zu dGRxYSAgICglMCksICUleG1tMCIgOjogInIiIChzcmMpLCAibSIgKHNyY1swXSkpOwo+PiAJCWFz bSgibW92bnRkcWEgMTYoJTApLCAlJXhtbTEiIDo6ICJyIiAoc3JjKSwgIm0iIChzcmNbMV0pKTsK Pj4gCQlhc20oIm1vdm50ZHFhIDMyKCUwKSwgJSV4bW0yIiA6OiAiciIgKHNyYyksICJtIiAoc3Jj WzJdKSk7Cj4+IAkJYXNtKCJtb3ZudGRxYSA0OCglMCksICUleG1tMyIgOjogInIiIChzcmMpLCAi bSIgKHNyY1szXSkpOwo+PiAJCWFzbSgibW92YXBzICUleG1tMCwgICAoJTEpIiA6ICI9bSIgKGRz dFswXSkgOiAiciIgKGRzdCkpOwo+PiAJCWFzbSgibW92YXBzICUleG1tMSwgMTYoJTEpIiA6ICI9 bSIgKGRzdFsxXSkgOiAiciIgKGRzdCkpOwo+PiAJCWFzbSgibW92YXBzICUleG1tMiwgMzIoJTEp IiA6ICI9bSIgKGRzdFsyXSkgOiAiciIgKGRzdCkpOwo+PiAJCWFzbSgibW92YXBzICUleG1tMywg NDgoJTEpIiA6ICI9bSIgKGRzdFszXSkgOiAiciIgKGRzdCkpOwo+PiAJCXNyYyArPSA0Owo+PiAJ CWRzdCArPSA0Owo+PiAJCWw0LS07Cj4+IAl9Cj4+Cj4+IAlsZW4gJT0gNDsKPj4gCXdoaWxlIChs ZW4pIHsKPj4gCQlhc20oIm1vdm50ZHFhICglMCksICUleG1tMCIgOjogInIiIChzcmMpLCAibSIg KHNyY1swXSkpOwo+PiAJCWFzbSgibW92YXBzICUleG1tMCwgKCUxKSIgOiAiPW0iIChkc3RbMF0p IDogInIiIChkc3QpKTsKPj4gCQlzcmMrKzsKPj4gCQlkc3QrKzsKPj4gCQlsZW4tLTsKPj4gCX0K Pj4KPj4gCWtlcm5lbF9mcHVfZW5kKCk7Cj4+IH0KPj4KPj4gQWx0aG91Z2ggSSBzdGlsbCBoYXZl bid0IGZpZ3VyZWQgb3V0IGEgd2F5IHRvIGNvbnZpbmNlIGl0IHRvIHVzZQo+PiB0aGUgc2FtZSBy ZWdpc3RlcnMgZm9yIHNyYyBhbmQgZGVzdCBiZXR3ZWVuIHRoZSB0d28gbG9vcHMuCj4KPiBJIHJl bWVtYmVyZWQgb25lIGZhbW91cyBpbnRlcnZpZXcgcXVlc3Rpb24sIGFsb25nIHRoZSBsaW5lcyBv ZiwgIndoYXQKPiBpcyB0aGUgY29kZSBiZWxvdyBkb2luZyIuIFRyYW5zbGF0ZWQgdG8gdGhpcyBl eGFtcGxlOgo+Cj4gc3RhdGljIHZvaWQgX19tZW1jcHlfbnRkcWEoc3RydWN0IHF3MiAqZHN0LCBj b25zdCBzdHJ1Y3QgcXcyICpzcmMsIHVuc2lnbmVkIGxvbmcgbGVuKQo+IHsKPiAJdW5zaWduZWQg bG9uZyBuOwo+Cj4gCWtlcm5lbF9mcHVfYmVnaW4oKTsKPgo+IAluID0gKGxlbiArIDMpIC8gNDsK PiAJc3dpdGNoIChsZW4gJSA0KSB7Cj4gCWNhc2UgMDogZG8geyBhc20oIm1vdm50ZHFhICUxLCAl JXhtbTBcbiIKPiAJCQkgICJtb3ZhcHMgJSV4bW0wLCAlMFxuIiA6ICI9bSIgKCpkc3QpOiAibSIg KCpzcmMpKTsKPiAJCSAgICAgc3JjKys7IGRzdCsrOwo+IAljYXNlIDM6CSAgICAgYXNtKCJtb3Zu dGRxYSAlMSwgJSV4bW0xXG4iCj4gCQkJICAibW92YXBzICUleG1tMSwgJTBcbiIgOiAiPW0iICgq ZHN0KTogIm0iICgqc3JjKSk7Cj4gCQkgICAgIHNyYysrOyBkc3QrKzsKPiAJY2FzZSAyOgkgICAg IGFzbSgibW92bnRkcWEgJTEsICUleG1tMlxuIgo+IAkJCSAgIm1vdmFwcyAlJXhtbTIsICUwXG4i IDogIj1tIiAoKmRzdCk6ICJtIiAoKnNyYykpOwo+IAkJICAgICBzcmMrKzsgZHN0Kys7Cj4gCWNh c2UgMToJICAgICBhc20oIm1vdm50ZHFhICUxLCAlJXhtbTNcbiIKPiAJCQkgICJtb3ZhcHMgJSV4 bW0zLCAlMFxuIiA6ICI9bSIgKCpkc3QpOiAibSIgKCpzcmMpKTsKPiAJCSAgICAgc3JjKys7IGRz dCsrOwo+IAkJfSB3aGlsZSAoLS1uID4gMCk7Cj4gCX0KPgo+IAlrZXJuZWxfZnB1X2VuZCgpOwo+ IH0KPgo+IDpECj4KPiBObyBpZGVhIGlmIGxvYWRzL3N0b3JlcyBjYW4gcnVuIGFzeW5jIGluIHRo aXMgY2FzZS4KPgo+IFJlZ2FyZHMsCj4gVHZydGtvCgpIZXJlJ3MgeWV0IGFub3RoZXIgdmFyaWFu dCwganVzdCB0byBkb2N1bWVudCBvdGhlciB3YXlzIG9mIHdyaXRpbmcgaXQ6CgojaW5jbHVkZSAi YXNtL2ZwdS9hcGkuaCIKCi8qIFRoaXMgaXMgdGhlIGRhdGF0eXBlIG9mIGFuIHhtbSByZWdpc3Rl ciAqLwp0eXBlZGVmIGRvdWJsZSB4bW1kX3QgX19hdHRyaWJ1dGVfXyAoKHZlY3Rvcl9zaXplICgx NikpKTsKCl9fYXR0cmlidXRlX18oKHRhcmdldCgic3NlNC4xIikpKQp2b2lkIF9fbWVtY3B5X250 ZHFhKHhtbWRfdCAqZHN0LCBjb25zdCB4bW1kX3QgKnNyYywgdW5zaWduZWQgbG9uZyBsZW4pCnsK CXhtbWRfdCB0bXAwLCB0bXAxLCB0bXAyLCB0bXAzOwoJdW5zaWduZWQgbG9uZyBsNjQ7CgoJa2Vy bmVsX2ZwdV9iZWdpbigpOwoKCS8qIFdob2xlIDY0LWJ5dGUgYmxvY2tzIGFzIDQqMTYgYnl0ZXMg Ki8KCWZvciAobDY0ID0gbGVuLzY0OyBsNjQtLTsgKSB7CgkJYXNtKCJtb3ZudGRxYSAlMSwgJTAi IDogIj14IiAodG1wMCkgOiAibSIgKCpzcmMrKykpOwoJCWFzbSgibW92bnRkcWEgJTEsICUwIiA6 ICI9eCIgKHRtcDEpIDogIm0iICgqc3JjKyspKTsKCQlhc20oIm1vdm50ZHFhICUxLCAlMCIgOiAi PXgiICh0bXAyKSA6ICJtIiAoKnNyYysrKSk7CgkJYXNtKCJtb3ZudGRxYSAlMSwgJTAiIDogIj14 IiAodG1wMykgOiAibSIgKCpzcmMrKykpOwoJCWFzbSgibW92YXBzICAgJTEsICUwIiA6ICI9bSIg KCpkc3QrKykgOiAieCIgKHRtcDApKTsKCQlhc20oIm1vdmFwcyAgICUxLCAlMCIgOiAiPW0iICgq ZHN0KyspIDogIngiICh0bXAxKSk7CgkJYXNtKCJtb3ZhcHMgICAlMSwgJTAiIDogIj1tIiAoKmRz dCsrKSA6ICJ4IiAodG1wMikpOwoJCWFzbSgibW92YXBzICAgJTEsICUwIiA6ICI9bSIgKCpkc3Qr KykgOiAieCIgKHRtcDMpKTsKCX0KCgkvKiBSZW1haW5pbmcgdXAtdG8tMyAxNi1ieXRlIGNodW5r cyAqLwoJZm9yIChsZW4gJj0gNjMsIGxlbiA+Pj0gNDsgbGVuLS07ICkgewoJCWFzbSgibW92bnRk cWEgJTEsICUwIiA6ICI9eCIgKHRtcDApIDogIm0iICgqc3JjKyspKTsKCQlhc20oIm1vdmFwcyAg ICUxLCAlMCIgOiAiPW0iICgqZHN0KyspIDogIngiICh0bXAwKSk7Cgl9CgoJa2VybmVsX2ZwdV9l bmQoKTsKfQoKSSB3b25kZXJlZCB3aGV0aGVyIHdlIGNvdWxkIGdldCBHQ0MgdG8gdW5yb2xsIHRo ZSBsb29wcyBhdXRvbWF0aWNhbGx5IAppLmUuIGp1c3Qgd3JpdGUgdGhlIG9uZSBsb29wIGFuZCBz YXkgd2Ugd2FudGVkIGl0IHVucm9sbGVkIGZvdXIgdGltZXMsIApsZWF2aW5nIHRoZSBjb21waWxl ciB0byBkZWFsIHdpdGggdGhlIHJlbWFpbmRlcjsgYnV0IEkgZGlkbid0IGZpbmQgYSB3YXkgCnRv IHNwZWNpZnkgInVucm9sbCA0IHRpbWVzIiBhcyBvcHBvc2VkIHRvIGp1c3QgInVucm9sbCB0aGlz IHNvbWUiLgoKLkRhdmUuCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=