Date: Sat, 4 Nov 2006 00:11:55 +0100 From: "Attilio Rao" <attilio@freebsd.org> To: "ranjith kumar" <ranjith_kumar_b4u@yahoo.com> Cc: freebsd-ia32@freebsd.org Subject: Re: issue group for pentium4 Message-ID: <3bbf2fe10611031511p3099f83t8990552621dff16e@mail.gmail.com> In-Reply-To: <20061103215946.88505.qmail@web58411.mail.re3.yahoo.com> References: <3bbf2fe10610181116w64407a43j83e1acfa16c6c9d5@mail.gmail.com> <20061103215946.88505.qmail@web58411.mail.re3.yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
2006/11/3, ranjith kumar <ranjith_kumar_b4u@yahoo.com>: > Hi > 1) "Issue group" is a set of instructions which can > be issued to different execution units at same time so > that many execution units can be executed parallely. > > Can any one tell any sourse where I can get the > information such as which set of instructions are > called as an issue group(in case of pentium 4 > processor only). I'm unsure there is public informations about that specific CPU for issue groups. Note that these are particular important in order to prevent pipeline flushings in some cases (ie: multiple L1 miss). > 2) Compilers exploit such a feature by reodering > instructions. > But Pentium 4 processor reoders instructions to do > the same thing. > So reordering by compilers is unnessecary. > > Am I right???????????? No. Instruction reordering must be helped by an ad-hoc programming of the developers. You can manually exploit this trying to access as many different registers you can in the same code-path (and in the same pipeline scope). Stupid examples: not reordering: mov (%esi), %eax mov %eax, (%edi) mov 4(%esi), %eax mov %eax, 4(%edi) mov 8(%esi), %eax mov %eax, 8(%edi) mov 12(%esi), %eax mov %eax, 12(%edi) good ordering: mov (%esi), %eax mov 4(%esi), %ebx mov 8(%esi), %ecx mov 12(%esi), %edx mov %eax, (%edi) mov %ebx, 4(%edi) mov %ecx, 8(%edi) mov %edx, 12(%edi) This is what the compiler might optimize. > 3)How many instructions does Pentium 4 processor can > look insatantly to reorder instructions? As long as NetBurst's pipeline is (20 pipeline stages). Attilio -- Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3bbf2fe10611031511p3099f83t8990552621dff16e>