• DocumentCode
    3183462
  • Title

    Programming multi-core architectures using Data-Flow techniques

  • Author

    Arandi, Samer ; Evripidou, Paraskevas

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Cyprus, Nicosia, Cyprus
  • fYear
    2010
  • fDate
    19-22 July 2010
  • Firstpage
    152
  • Lastpage
    161
  • Abstract
    In this paper we present a Multithreaded programming methodology for multi-core systems that utilizes Data-Flow concurrency. The programmer augments the program with macros that define threads and their data dependencies. The macros are expanded into calls to the run-time that creates and maintains the dependency graph of the threads and performs the scheduling of the threads using Data-Flow principles. We demonstrate the programming methodology and discuss some of the issues and optimizations affecting the performance. A detailed evaluation is presented using two applications as case studies. The evaluation shows that the two applications scale well and compare favorably with the results of similar systems. Our results demonstrate that Data-Flow concurrency can be efficiently implemented as a Virtual Machine on multi-core systems.
  • Keywords
    data analysis; multi-threading; parallel architectures; virtual machines; data dependencies; data flow techniques; dependency graph; multithreaded programming methodology; programming multicore architectures; virtual machine; Context; Instruction sets; Multithreading; Programming; Runtime; Synchronization; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Embedded Computer Systems (SAMOS), 2010 International Conference on
  • Conference_Location
    Samos
  • Print_ISBN
    978-1-4244-7936-8
  • Electronic_ISBN
    978-1-4244-7938-2
  • Type

    conf

  • DOI
    10.1109/ICSAMOS.2010.5642072
  • Filename
    5642072