From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19488 invoked by alias); 30 Sep 2004 06:58:29 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 19454 invoked from network); 30 Sep 2004 06:58:27 -0000 Received: from unknown (HELO mtagate1.de.ibm.com) (195.212.29.150) by sourceware.org with SMTP; 30 Sep 2004 06:58:27 -0000 Received: from d12nrmr1607.megacenter.de.ibm.com (d12nrmr1607.megacenter.de.ibm.com [9.149.167.49]) by mtagate1.de.ibm.com (8.12.10/8.12.10) with ESMTP id i8U6wQfQ150296; Thu, 30 Sep 2004 06:58:26 GMT Received: from d12ml102.megacenter.de.ibm.com (d12av02.megacenter.de.ibm.com [9.149.165.228]) by d12nrmr1607.megacenter.de.ibm.com (8.12.10/NCO/VER6.6) with ESMTP id i8U6wP08114828; Thu, 30 Sep 2004 08:58:25 +0200 In-Reply-To: Subject: Re: SMS scheduling To: Canqun Yang Cc: gcc@gcc.gnu.org Message-ID: From: Mostafa Hagog Date: Thu, 30 Sep 2004 08:50:00 -0000 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII X-SW-Source: 2004-09/txt/msg01649.txt.bz2 BTW, there are several improvement to SMS that are postponed to post-gcc4.0, these enhancement include: 1. Use of loop-info structure to detect loops. 2. Use of alias sets to remove memory dependencies. 3. Remove register anti-dependencies. Patches for these improvements are ready. We are also working on using the register pressure utility in SMS. Mostafa. Mostafa Hagog wrote on 29/09/2004 15:12:26: > > Canqun Yang wrote on 28/09/2004 11:06:29: > > > Hi, all > > > > I tested the Swing Modulo Scheduling of GCC. For > > simple program, the numerical caculation of PI, it > > achieves significant speedup on IA64. But, for little > > bit complex programs, the SMS can hardly work out a > > successful schedule. > > > > The algorithms implemented by Ayal and Mostafa are > > correct. It seems that the SMS itself is wrong. The > > schedule priority order calculated by SMS is much > > different from normal MinDist algorithm. > > SMS prioritizes the nodes using critical patch based > heuristic - the main idea is that instructions that are > on the critical path are less flexible in means of > scheduling. > Why do you think that the priority order should be > according to MinDist algorithm (what is the minimum > distance in this case)? Can you provide an example > that supports this? > > > Besides this, > > SMS is not sensitive to II. Is SMS really wrong? > > The node ordering step in SMS is not sensitive to II > (as mentioned before it is based on critical path > heuristic). However, the scheduling step is sensitive > to II - failing to schedule the nodes of a loop within > II cycles will lead to try scheduling the nodes again > within II + 1 cycles. > > > Mostafa. > > > > >