From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4307 invoked by alias); 29 Jun 2009 19:02:01 -0000 Received: (qmail 3883 invoked by uid 22791); 29 Jun 2009 19:01:59 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from mail.uni-paderborn.de (HELO mail.uni-paderborn.de) (131.234.142.9) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 29 Jun 2009 19:01:51 +0000 Received: from dslb-084-061-130-007.pools.arcor-ip.net ([84.61.130.7] helo=[192.168.178.111]) by mail.uni-paderborn.de with esmtpsa (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.63 spheron) id 1MLM6s-0001fB-HL; Mon, 29 Jun 2009 21:01:47 +0200 Message-ID: <4A490F97.5000609@uni-paderborn.de> Date: Mon, 29 Jun 2009 20:03:00 -0000 From: Michael Kruse Reply-To: reply@meinersbur.de User-Agent: Thunderbird 2.0.0.22 (Windows/20090605) MIME-Version: 1.0 To: Vladimir Makarov CC: gcc@gcc.gnu.org Subject: Re: Register Pressure in Instruction Level Parallelism References: <4A47462E.1080402@uni-paderborn.de> <4A48EB07.3040602@redhat.com> In-Reply-To: <4A48EB07.3040602@redhat.com> Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=sha1; boundary="------------ms070706070903020009070905" X-IMT-Spam-Score: 0.0 () X-IMT-Authenticated-Sender: uid=meinert,ou=People,o=upb,c=de Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-06/txt/msg00685.txt.bz2 This is a cryptographically signed message in MIME format. --------------ms070706070903020009070905 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Content-length: 3221 Vladimir Makarov wrote: > Michael Kruse wrote: >> If the register sufficiency is higher than the physical number of >> registers, spill code is added to the graph. >> > For me, that is the most interesting part, unfortunately Touti (as I > remember) in his thesis say practically nothing about this. In the thesis, a modified Poletto algorithm is presented to add spill code. >> >> So, now my questions: How much do you think could this could improve >> compiled code speed? Would the current GCC/YARA benefit from such an >> optimization pass at all? > I think nobody can answer the questions until it is implemented. My main intention to ask this is that somebody might have said, that it was not worth the effort. Therefore, I could have saved me a lot of work. > If you are going to work on this project, some small advice about > evaluating register sufficiency. I found that register pressure is > already practically minimized before insn-scheduling (I suspect that > it is mostly done in TER). By the way, it also means that tree > balancing (which is actually much more complicated issue because it is > not tree but DAG) is not necessary for the backend as it was done in > Preston Briggs project (and mentioned in proposed Ken Zadeck's pass > stack). Thank you. I am grateful for any advice. >> What are the chances that this could get into the main GCC tree if it >> shows up to be an improvement? > I don't see any problem to get the code into main GCC tree if you get > even 1-2% improvement. Although there are some technical questions > (like code fitting into gcc practice standards) and commitment to > maintain the code. But this problems could be definitely overcome. I'd be willing to do this. >> I'd prefer to implement this for the gcc, but my advisor wants me to >> do it for the university's own compiler. Therefore I could also need >> arguments why to do it for the GCC. >> > Personally, I'd love to see this work done in GCC. I believe the > research work in compiler field should be done in real industrial > compilers because that is a final target of the research. I saw many > times that researchers report big improvements of their algorithms > because they are using toy compilers but when the same algorithms are > implemented in GCC they give practically nothing. For me a toy > compiler criteria is defined how good they are on some generally used > compiler benchmarks as SPEC (the better existing compiler performance, > the harder to get the same percent improvement). So if your > university compiler performance is close for example to SPECFP2000, I > think you could use it to get a real optimization impact. > > On the other hand, you definitely will get better numbers (and > spending less time) using a toy compiler than GCC and your research > probably could look more successful with the academic point of view. I don't think it a toy project. Industry is involved (embedded systems) and it also has multiple back-ends. The problem with it is, that it is (at least partially) proprietary. And I don't know about the other part. However, you can't download it on the web. Regards, Michael Kruse -- Tardyzentrismus verboten! --------------ms070706070903020009070905 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature Content-length: 5966 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEH AQAAoIINjzCCAz8wggKooAMCAQICAQ0wDQYJKoZIhvcNAQEFBQAwgdExCzAJ BgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNh cGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsT H0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1Ro YXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqGSIb3DQEJARYccGVy c29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMzA3MTcwMDAwMDBaFw0x MzA3MTYyMzU5NTlaMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUg Q29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29u YWwgRnJlZW1haWwgSXNzdWluZyBDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw gYkCgYEAxKY8VXNV+065yplaHmjAdQRwnd/p/6Me7L3N9VvyGna9fww6YfK/ Uc4B1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FWy688Cwfn8R+RNiQqE88r1fOC dz0Dviv+uxg+B79AgAJk16emu59l0cUqVIUPSAR/p7bRPGEEQB5kGXJgt/sC AwEAAaOBlDCBkTASBgNVHRMBAf8ECDAGAQH/AgEAMEMGA1UdHwQ8MDowOKA2 oDSGMmh0dHA6Ly9jcmwudGhhd3RlLmNvbS9UaGF3dGVQZXJzb25hbEZyZWVt YWlsQ0EuY3JsMAsGA1UdDwQEAwIBBjApBgNVHREEIjAgpB4wHDEaMBgGA1UE AxMRUHJpdmF0ZUxhYmVsMi0xMzgwDQYJKoZIhvcNAQEFBQADgYEASIzRUIPq Cy7MDaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYfqi2fNi/A9BxQIJNwPP2t4WFi w9k6GX6EsZkbAMUaC4J0niVQlGLH2ydxVyWN3amcOY6MIE9lX5Xa9/eH1sYI Tq726jTlEBpbNU1341YheILcIRk13iSx0x1G/11fZU8wggUiMIIEi6ADAgEC AhABlkfcqgBx7l/30QjQrmHwMA0GCSqGSIb3DQEBBQUAMGIxCzAJBgNVBAYT AlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSww KgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQTAe Fw0wODEyMTYyMzIyNThaFw0wOTEyMTYyMzIyNThaMIIBsjEOMAwGA1UEBBMF S3J1c2UxEDAOBgNVBCoTB01pY2hhZWwxFjAUBgNVBAMTDU1pY2hhZWwgS3J1 c2UxKTAnBgkqhkiG9w0BCQEWGk1pY2hhZWxLcnVzZUBNZWluZXJzYnVyLmRl MSIwIAYJKoZIhvcNAQkBFhNyZXBseUBtZWluZXJzYnVyLmRlMSIwIAYJKoZI hvcNAQkBFhNNaWNoYWVsS3J1c2VAV2ViLmRlMScwJQYJKoZIhvcNAQkBFhht ZWluZXJ0QHVuaS1wYWRlcmJvcm4uZGUxKDAmBgkqhkiG9w0BCQEWGW1laW5l cnNidXJAZ29vZ2xlbWFpbC5jb20xIzAhBgkqhkiG9w0BCQEWFE1laW5lcnNi dXJAZ21haWwuY29tMScwJQYJKoZIhvcNAQkBFhhNZWluZXJzYnVyQE1laW5l cnNidXIuZGUxITAfBgkqhkiG9w0BCQEWEm1rcnVzZUB1dGFzLmVkdS5hdTEd MBsGCSqGSIb3DQEJARYObWVpbmVydEB1cGIuZGUxIDAeBgkqhkiG9w0BCQEW EWJjY0BtZWluZXJzYnVyLmRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB CgKCAQEAt2ONiWmDiRnsU9pfSho6+6D1DG+egKhwPcofcdgl/MgriZUnZ7nk xeTP1FLZF7Io+Nm8vLB9O4HpDKhiOjXA6hPpWiq+YEsl2urEEEr4eiKccC+C mIf0UlGVnVWXrt5yH3ia8AH8EZrYQV5THtg0JV6maQwkdbh8iEJ8nYh20fzy Jg4vRHAcr1YNNYW9m3ODFvQNFzAAOU0Kv5HGZcMCEJQv/+DQLCPkizWXpl8l XOp2DhqK3vSPaQWu44oUk7Z8nFtCkNEREoKaYB9iivh+tFHT1+YfpYYzaoU3 N+gryqzrs63deKmiH0cdn+wDIgnWfpwgWH9iXYPypgxuf1azzwIDAQABo4IB ATCB/jCB7QYDVR0RBIHlMIHigRpNaWNoYWVsS3J1c2VATWVpbmVyc2J1ci5k ZYETcmVwbHlAbWVpbmVyc2J1ci5kZYETTWljaGFlbEtydXNlQFdlYi5kZYEY bWVpbmVydEB1bmktcGFkZXJib3JuLmRlgRltZWluZXJzYnVyQGdvb2dsZW1h aWwuY29tgRRNZWluZXJzYnVyQGdtYWlsLmNvbYEYTWVpbmVyc2J1ckBNZWlu ZXJzYnVyLmRlgRJta3J1c2VAdXRhcy5lZHUuYXWBDm1laW5lcnRAdXBiLmRl gRFiY2NAbWVpbmVyc2J1ci5kZTAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEB BQUAA4GBAAaqGNzCuVZPwrtax+FjxNV0Gvp+1mFysNcbXphD5aAmygKutey9 rIxSgYXSZeixBi93JzNAhY3XgFqDgLAgwJjsqmiI+m2HRDqn4f7WX+cC2Oy5 9teS93TH7mt1e8wd5zRXfnEvqkCf7gfBs80Ja2v0CxIpeWDWNRoqzfaiDEGt MIIFIjCCBIugAwIBAgIQAZZH3KoAce5f99EI0K5h8DANBgkqhkiG9w0BAQUF ADBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcg KFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWls IElzc3VpbmcgQ0EwHhcNMDgxMjE2MjMyMjU4WhcNMDkxMjE2MjMyMjU4WjCC AbIxDjAMBgNVBAQTBUtydXNlMRAwDgYDVQQqEwdNaWNoYWVsMRYwFAYDVQQD Ew1NaWNoYWVsIEtydXNlMSkwJwYJKoZIhvcNAQkBFhpNaWNoYWVsS3J1c2VA TWVpbmVyc2J1ci5kZTEiMCAGCSqGSIb3DQEJARYTcmVwbHlAbWVpbmVyc2J1 ci5kZTEiMCAGCSqGSIb3DQEJARYTTWljaGFlbEtydXNlQFdlYi5kZTEnMCUG CSqGSIb3DQEJARYYbWVpbmVydEB1bmktcGFkZXJib3JuLmRlMSgwJgYJKoZI hvcNAQkBFhltZWluZXJzYnVyQGdvb2dsZW1haWwuY29tMSMwIQYJKoZIhvcN AQkBFhRNZWluZXJzYnVyQGdtYWlsLmNvbTEnMCUGCSqGSIb3DQEJARYYTWVp bmVyc2J1ckBNZWluZXJzYnVyLmRlMSEwHwYJKoZIhvcNAQkBFhJta3J1c2VA dXRhcy5lZHUuYXUxHTAbBgkqhkiG9w0BCQEWDm1laW5lcnRAdXBiLmRlMSAw HgYJKoZIhvcNAQkBFhFiY2NAbWVpbmVyc2J1ci5kZTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBALdjjYlpg4kZ7FPaX0oaOvug9QxvnoCocD3K H3HYJfzIK4mVJ2e55MXkz9RS2ReyKPjZvLywfTuB6QyoYjo1wOoT6VoqvmBL JdrqxBBK+HoinHAvgpiH9FJRlZ1Vl67ech94mvAB/BGa2EFeUx7YNCVepmkM JHW4fIhCfJ2IdtH88iYOL0RwHK9WDTWFvZtzgxb0DRcwADlNCr+RxmXDAhCU L//g0Cwj5Is1l6ZfJVzqdg4ait70j2kFruOKFJO2fJxbQpDRERKCmmAfYor4 frRR09fmH6WGM2qFNzfoK8qs67Ot3Xipoh9HHZ/sAyIJ1n6cIFh/Yl2D8qYM bn9Ws88CAwEAAaOCAQEwgf4wge0GA1UdEQSB5TCB4oEaTWljaGFlbEtydXNl QE1laW5lcnNidXIuZGWBE3JlcGx5QG1laW5lcnNidXIuZGWBE01pY2hhZWxL cnVzZUBXZWIuZGWBGG1laW5lcnRAdW5pLXBhZGVyYm9ybi5kZYEZbWVpbmVy c2J1ckBnb29nbGVtYWlsLmNvbYEUTWVpbmVyc2J1ckBnbWFpbC5jb22BGE1l aW5lcnNidXJATWVpbmVyc2J1ci5kZYESbWtydXNlQHV0YXMuZWR1LmF1gQ5t ZWluZXJ0QHVwYi5kZYERYmNjQG1laW5lcnNidXIuZGUwDAYDVR0TAQH/BAIw ADANBgkqhkiG9w0BAQUFAAOBgQAGqhjcwrlWT8K7WsfhY8TVdBr6ftZhcrDX G16YQ+WgJsoCrrXsvayMUoGF0mXosQYvdyczQIWN14Bag4CwIMCY7KpoiPpt h0Q6p+H+1l/nAtjsufbXkvd0x+5rdXvMHec0V35xL6pAn+4HwbPNCWtr9AsS KXlg1jUaKs32ogxBrTGCA2QwggNgAgEBMHYwYjELMAkGA1UEBhMCWkExJTAj BgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMT I1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBAhABlkfcqgBx 7l/30QjQrmHwMAkGBSsOAwIaBQCgggHDMBgGCSqGSIb3DQEJAzELBgkqhkiG 9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA5MDYyOTE5MDE0M1owIwYJKoZIhvcN AQkEMRYEFCMQ5y0ytkBdaARNXyyDUH3pXQFuMFIGCSqGSIb3DQEJDzFFMEMw CgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcG BSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGFBgkrBgEEAYI3EAQxeDB2MGIxCzAJ BgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBM dGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWlu ZyBDQQIQAZZH3KoAce5f99EI0K5h8DCBhwYLKoZIhvcNAQkQAgsxeKB2MGIx CzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5 KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNz dWluZyBDQQIQAZZH3KoAce5f99EI0K5h8DANBgkqhkiG9w0BAQEFAASCAQBe r5tERazxeY7t0SGYYXxOxTEzsdc/R+v4wZkdmrusKzW4Sq3wAP9v2PcEK/Bk 0ERAtiTGHK6uVTPbGGBG2qmBxmfMyUnBpc1ia+rrSBQBiX5F8gF2a2j2R/Xi 0/E1A/nxApPr0ZZINEG3hk2K2M85SNkyGNSYKZ5OjZUskZxsRJ8EJo4lcQ4C 2tUdTYmDJQp09PMkmPjml2XUwyJYu/59hEhvfNCrH3CPX+mBDrllTNIPMwxJ 7p4/IrmGdyTLC1Nx5FEPmD/2FkWcMEAAkrh7H9BIMOjJle8mjmvISerWFNWJ xmDSlFtu5iuuzcqX/GVMSIPeMQ4sLtvME/efhOCAAAAAAAAA --------------ms070706070903020009070905--