Uma Análise Comparativa entre o Escalonamento de Instruções EPIC e o DTSVLIW
Resumo
Para obter ganhos de desempenho, a arquitetura Explicitly Parallel Instruction Computing (EPIC) retira do hardware a responsabilidade de extrair o paralelismo no nível de instrução e a transfere para o compilador, expondo o controle do hardware ao programador do nível convencional de máquina. Já a arquitetura Dynamically Trace Scheduled VLIW (DTSVLIW) aposta em um algoritmo simples de escalonamento - implementável em hardware e executado dinamicamente - para obter maiores níveis de paralelismo no nível de instrução e, conseqüentemente, ganhar desempenho. Neste trabalho, nós examinamos três combinações compilador/arquitetura EPIC e as comparamos com uma combinação compilador/DTSVLIW. Nossos experimentos com programas do SPECint95 mostram que, na média, a arquitetura DTSVLIW obtém melhor desempenho porque seu escalonador dinâmico, embora muito mais simples, extrai mais paralelismo que o escalonador do compilador EPIC devido à exploração de informação visível apenas em tempo de execução.
Referências
AHO, A.; SETHI, R.; ULLMAN, J. D.. Compilers - Principies Techniques and Tools. Addison-Wesley Publishing Company, USA, 1986.
ALLAN, V. H. et al. Software Pipeline. ACM Computing Surveys, Vol. 27, No. 3, September 1995.
DE SOUZA, Alberto F.; ROUNCE, Peter. Dynamically Trace Scheduled VLIW Architectures. Proc. of the HPCN'98, in Lecture Notes on Computer Science, Vol. 1401, pp. 993-995, 1998.
DE SOUZA, Alberto F.; ROUNCE, Peter. Dynamically Scheduling VLIW lnstructions. Journal of Parallel and Distributed Computing, n.60, p. 1480-1511, 2000.
DE SOUZA, A. F. lmproving the DTSVLIW Performance via Block Compaction. Aceito para o 13th Brazilian Symp. on Computer Architecture and High Performance Computing, 2001.
Digital Equipment Corporation. Alpha Architecture Handbook. Digital Equipment Corporation, 1992. 94
FISHER Josep. Trace Scheduling: A Technique for Global Microcode Compaction. IEEE Transactions on Computers, v. C-30, n.7, p.478-490, Jul 1981.
FISHER, Josep. The VLIW Machine: A multiprocessor for Compiling Scientific Code. IEEE Computer, Jul 1984.
GWENNAP, L. Intel, HP make EPIC Disclosure. Microprocessor Report, Vol. 11, No. 14, Oct 1997.
HP Laboratories; New York University, RcaCT-ILP Group; University of Illinois, IMPACT Group. Trimaran: An Infrastructure for Compiler Research in Instruction Level Parallelism. 1998.
HP Laboratories. Ski IA64 Simulator Reference Manual. Ver 1.0L, Apr 2000.
HWU, Wen-mei W.; et al. The Superblock: An Effective Technique for VLIW and Superscalar Computation. The Journal of Supercomputing, v.7, p.229-248, 1993 o
INTEL Corporation. IA64 Application Developer's Architecture Guide., 1999.
INTEL Corporation. Intel C++ Compiler User's Guide., 2001.
JOHNSON, M. Superscalar Microprocessor Design. Prentice-Hall, 1991.
KATHAIL, Vinod; SCHLANSKER, Michael; RAU, B. Ramakrishna. HPL-PD Architecture Specification: Version 1.0. HPL-93-80, Feb 1994.
MAHLKE, Scott; LIN, David; CHEN, William; HANK, Richard; BRINGMANN, Roger. Effective Compiler Support for Predicated Execution Using the Hyperblock. In: Proceedings of the 25th Annual International Symposium on Microarchitecture, p.45-54, 1992.
NAIR, R.; HOPKJNS, M. E.. Exploiting lnstructions Level Parallelism in Processors by Caching Scheduled Groups. Proceedings of the 24th Annual International Symposium on Computer Architecture, p. 13-25, 1997.
PARK, J. R. H.; SCHLANSKER, M. S. On Predicated Execution. Technical Report HPL-91-58, HP Laboratories, Palo Alto, CA, May 1991.
PATTERSON, D. A.; HENNESSY, J. L.. Computer Architecture: A Quantitative Approach, Second Edition. Morgan Kaufmann Publishers, Inc., 1996.
RAMAMOORTHY, C. C.; Li, H. F. Pipeline Architecture. ACM Computing Surveys, Vol. 9, No. 1, pp. 61-102, March 1977.
RAU, B. R. FISHER, J. A. lnstruction-Level Parallelism: History, Overview, and Perspective. The Journal of Supercomputing, Vol. 7, pp. 9-50, 1993.