1 / 42

Onderzoeksgroep PARIS

Onderzoeksgroep PARIS. Koen De Bosschere Woensdag 10 november 1999. RUG informaticavakgroepen. Toegepaste wetenschappen ELIS, Jan Van Campenhout INTEC, Paul Lagasse TELIN, Herwig Bruneel Wetenschappen TWI, Gilbert Crombez CAGE, Joseph Thas. Vakgroep ELIS. 134 personeelsleden 19 ZAP

farren
Download Presentation

Onderzoeksgroep PARIS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Onderzoeksgroep PARIS Koen De Bosschere Woensdag 10 november 1999 Onderzoeksgroep PARIS

  2. RUG informaticavakgroepen • Toegepaste wetenschappen • ELIS, Jan Van Campenhout • INTEC, Paul Lagasse • TELIN, Herwig Bruneel • Wetenschappen • TWI, Gilbert Crombez • CAGE, Joseph Thas Onderzoeksgroep PARIS

  3. Vakgroep ELIS • 134 personeelsleden • 19 ZAP • 20 ATP • 95 WP (10 postdocs) • Activiteitsdomeinen • Fysische elektronica • Toegepaste elektronica • Informatiesystemen Onderzoeksgroep PARIS

  4. Vakgroep ELIS: activiteiten • Fysische elektronica • LCD-displays • Zonnecellen • Thermo-elektronica • Magnetisme • Toegepaste elektronica • Informatiesystemen Onderzoeksgroep PARIS

  5. Vakgroep ELIS: activiteiten • Fysische elektronica • Toegepaste elektronica • VLSI-ontwerp • Display-technologie (LCD) • Interconnectie-technologie • Analoog circuit- en systeemontwerp • Elektrochemische cellen • Informatiesystemen Onderzoeksgroep PARIS

  6. Onderzoeksgroep PARIS

  7. Vakgroep ELIS: activiteiten • Fysische elektronica • Toegepaste elektronica • Informatiesystemen • Spraakverwerking • Medische beeldverwerking • Parallelle Informatiesystemen Onderzoeksgroep PARIS

  8. Informatiesystemen • Spraakverwerking • spraakherkenning • spraaksynthese • Technologie & Integratie bvba • Medische beeldverwerking • Parallelle Informatiesystemen Onderzoeksgroep PARIS

  9. Informatiesystemen • Spraakverwerking • Medische beeldverwerking • Compressie • Reconstructie • Extractie van informatie • Drukvoorbereiding • Parallelle Informatiesystemen Onderzoeksgroep PARIS

  10. Informatiesystemen • Spraakverwerking • Medische beeldverwerking • Parallelle Informatiesystemen • Automatische parallellisering • Ontwerp van digitale systemen • De hardware-software interface Onderzoeksgroep PARIS

  11. Paris: automatische parallellisering • Detectie van parallellisme in bestaande programma’s • Codegeneratie voor • systemen met gemeenschappelijk geheugen • gedistribueerde systemen: PVM, MPI, DSM • Multicasting, broadcasting Onderzoeksgroep PARIS

  12. Paris: ontwerp van digitale systemen • FPGA’s • VHDL-modellering • Opto-elektronische interconnecties • Topologische eigenschappen van grote circuits Onderzoeksgroep PARIS

  13. Paris: hardware-software interface • Hardware-zijde • Software-zijde Onderzoeksgroep PARIS

  14. Paris: hardware-software interface • Hardware-zijde • modellering van benchmarks • waardevoorspelling • cache-architecturen • blokgestructureerde architecturen • herconfigureerbare architecturen • Software-zijde Onderzoeksgroep PARIS

  15. Paris: hardware-software interface • Hardware-zijde • Software-zijde • optimaliserende linkers • Compaq alpha • Data layout voor DSP’s • parallel debugging • Jiti • Java data race detectie Onderzoeksgroep PARIS

  16. Modellering van Benchmarks • Architectuurbenchmarks: Spec • Moderne processors: > 500 MHz • IPC = 2 • 109 instructies/seconde • Simulatie = 10 000 instructies/seconde • 27 uur simulatie voor 1s uitvoeringstijd • Effect van optimalisatie op benchmark soms zeer moeilijk te voorspellen Onderzoeksgroep PARIS

  17. Modellering van Benchmarks Doelstelling • karakterisering van benchmarktraces • grootte basisblokken • afhankelijkheidsafstanden • working set, enz... • generatie van synthetische benchmarktraces (20% nauwkeurigheid) Onderzoeksgroep PARIS

  18. Waardevoorspelling • Veel berekende waarden kunnen voorspeld worden • adressen • opgeladen waarden • Herhoogt het parallellisme op instructieniveau Onderzoeksgroep PARIS

  19. 1 5 6 7 2 3 8 4 Waardevoorspelling 1 2 3 4 5 6 7 8 Onderzoeksgroep PARIS

  20. Waardevoorspelling • Probleem • de meeste instructies kunnen voorspeld worden • voor 64-bit architectuur n x 64 bit nodig voor de historiek • Oplossing • enkel betrouwbare voorspellingen • enkel instructies in kritisch pad Onderzoeksgroep PARIS

  21. Cache-architecturen • Kloof tussen processorsnelheid en geheugensnelheid neemt exponentieel toe (geheugen >100 keer trager) • Oplossing: hiërarchie van caches (tot 3) • Technologische beperking: snelle cache = kleine cache • Dus: hoe sneller de processor, hoe kleiner de cache moet zijn Onderzoeksgroep PARIS

  22. Cache-architecturen • Vaststelling • cachelijnen zeer ongelijk gebruikt • overbevraging in bepaalde gebieden • ongebruikt in andere gebieden • Lokaliteit • gegevens met spatiale lokaliteit kunnen gegevens met temporele lokaliteit verdringen Onderzoeksgroep PARIS

  23. Processor Cache cachebeheerder Geheugen Cache-architecturen • Oplossing S T Onderzoeksgroep PARIS

  24. Blokgestructureerde architecturen • Voor het eerst beschreven door Yale Patt • Idee: • basisblokgrootte opvoeren (16, 32, 64) • predikaten • dataflow-uitvoering • statische registerhernoeming • IPC iets lager, frequentie hoger, prestatie ook hoger Onderzoeksgroep PARIS

  25. Blokgestructureerde architecturen c = c + 1; if ( c == 0 ) { a = a + 1; b = b + 1; } else { a = a + 2; } IN: r1, r2, r3 INSTR: add r3,1 -> i1 sub i1,0 -> i2 (==0,p1) (p1) add r1,1 -> i3 (p1) add r2,1 -> i4 (~p1) add r1,2 -> i5 OUT: i1 -> r3 (p1) i3 -> r1 (~p1) i5 -> r1 (p1) i4 -> r2 BRANCH: - Onderzoeksgroep PARIS

  26. Dataflowdiagramma c = c + 1; if ( c == 0 ) { a = a + 1; b = b + 1; } else { a = a + 2; } c = c + 1 c ==0 ? a = a + 1 a = a + 2 b = b + 1 Onderzoeksgroep PARIS

  27. Dataflowdiagramma BSA IN: r1, r2, r3 INSTR: add r3,1 -> i1 sub i1,0 -> i2 (==0,p1) add r1,1 -> i3 add r2,1 -> i4 add r1,2 -> i5 OUT: i1 -> r3 (p1) i3 -> r1 (~p1) i5 -> r1 (p1) i4 -> r2 BRANCH: - Onderzoeksgroep PARIS

  28. Dataflowdiagramma BSA add r3,1, i1 add r1,1 -> i3 add r2,1 -> i4 add r1,2 -> i5 sub i1,0 -> i2 (==0,p1) i1 -> r3 (p1) i3 -> r1 (p1) i4 -> r2 (~p1) i5 -> r1 Onderzoeksgroep PARIS

  29. Dataflowdiagramma BSA add r3,1, i1 add r1,1 -> i3 add r2,1 -> i4 add r1,2 -> i5 sub i1,0 -> i2 (==0,p1) i1 -> r3 (p1) i3 -> r1 (p1) i4 -> r2 (~p1) i5 -> r1 Onderzoeksgroep PARIS

  30. Herconfigureerbare processors • Nu > 100 miljoen transistors per chip • Geregeld uitbreidingen (b.v. multimedia) • Herconfigureerbaarheid: laat de gebruiker toe om zelf instructies te definiëren (fpga) • signaalverwerking • bitmanipulaties • ... Onderzoeksgroep PARIS

  31. Optimaliserende linkers • Compiler heeft nooit zicht op het complete programma • b.v. sqrt(2) data-layout (caches, banken) inlining van bibliotheekroutines • Alto: Another Link-Time Optimizer • 20% snelheidswinst Onderzoeksgroep PARIS

  32. Parallel Debugging • Parallelle programma’s worden niet steeds deterministisch uitgevoerd • Cyclisch debuggen onbruikbaar (Heisenbugs) • Oplossing: opnemen van een uitvoering en deze gebruiken om latere uitvoeringen te controleren Onderzoeksgroep PARIS

  33. Parallel Debugging • Probleem: traces die alle niet-determinisme bevatten zijn extreem groot • Compromis: enkel synchronisatie-operaties tracen. • Probleem: data-races kunnen niet heruitgevoerd worden Onderzoeksgroep PARIS

  34. Parallel Debugging • Oplossing: data-race detectie tijdens de heruitvoering: eerste data race wordt gegarandeerd gedetecteerd • Implementatie: Jiti Onderzoeksgroep PARIS

  35. Jiti proces in geheugen proces’ in geheugen CODE DATA trampolines Onderzoeksgroep PARIS

  36. Data race detectie 1,0,0 0,1,0 0,0,1 2,0,0 2,2,0 2,3,0 3,3,0 4,3,0 4,3,2 Onderzoeksgroep PARIS

  37. Data race detectie 1,0,0 0,1,0 0,0,1 2,0,0 2,2,0 2,3,0 3,3,0 4,3,0 4,3,2 Onderzoeksgroep PARIS

  38. 2,3,0 4,3,0 4,3,2 Data race detectie 1,0,0 0,1,0 0,0,1 2,0,0 2,2,0 2,3,0 3,3,0 4,3,0 4,3,2 Onderzoeksgroep PARIS

  39. min 2,3,0 Data race detectie 1,0,0 0,1,0 0,0,1 2,0,0 2,2,0 2,3,0 2,3,0 4,3,0 4,3,2 3,3,0 4,3,0 4,3,2 Onderzoeksgroep PARIS

  40. Data race detectie • Nadeel van Jiti: alle geheugenlocaties worden vergeleken • In de praktijk hoeft dit niet • read-only geheugenlocaties kunnen nooit een race veroorzaken • proces-lokale data kunnen nooit een race veroorzaken • b.v. Java Onderzoeksgroep PARIS

  41. Java data race detectie • JVM laat toe te achterhalen welke Java objecten manipuleerbaar zijn • Enkel objecten manipuleerbaar door minstens twee draden vereisen data race detectie • Sterke reductie van het aantal te tracen objecten en geheugenlocaties Onderzoeksgroep PARIS

  42. Conclusie • Centrale thema: hardware-software interface • parallellisme • architecturale verbeteringen • efficiënte tools (compilers, linkers, debuggers) • Symposium over nieuwe tendensen in de computer architectuur 16 december. Onderzoeksgroep PARIS

More Related