Re: Parsing using a Graphics Processing Unit (GPU)?

Roger L Costello <costello@mitre.org>
Wed, 2 Sep 2020 11:45:20 +0000

          From comp.compilers

Related articles
[2 earlier articles]
Re: Parsing using a Graphics Processing Unit (GPU)? minforth@arcor.de (A. K.) (2020-09-01)
Re: Parsing using a Graphics Processing Unit (GPU)? DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2020-09-01)
Parsing using a Graphics Processing Unit (GPU)? christopher.f.clark@compiler-resources.com (Christopher F Clark) (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? elronnd@elronnd.net (Elijah Stone) (2020-09-01)
Re: Parsing using a Graphics Processing Unit (GPU)? arnold@skeeve.com (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? 0xe2.0x9a.0x9b@gmail.com (Jan Ziak) (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? costello@mitre.org (Roger L Costello) (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? christopher.f.clark@compiler-resources.com (Christopher F Clark) (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2020-09-02)
Re: Parsing using a Graphics Processing Unit (GPU)? christopher.f.clark@compiler-resources.com (Christopher F Clark) (2020-09-03)
Re: Parsing using a Graphics Processing Unit (GPU)? gah4@u.washington.edu (gah4) (2020-09-09)
Re: Parsing using a Graphics Processing Unit (GPU)? monnier@iro.umontreal.ca (Stefan Monnier) (2020-09-22)
| List of all articles for this month |

From: Roger L Costello <costello@mitre.org>
Newsgroups: comp.compilers
Date: Wed, 2 Sep 2020 11:45:20 +0000
Organization: Compilers Central
References: 20-09-001 20-09-006
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="6664"; mail-complaints-to="abuse@iecc.com"
Keywords: parallel
Posted-Date: 02 Sep 2020 10:08:16 EDT

> Look up Aaron Hsu's Ph.D thesis,


> A data parallel compiler hosted on the GPU


> (https://scholarworks.iu.edu/dspace/handle/2022/24749)


Abstract:
This work describes a general, scalable method for building data-parallel by
construction tree transformations that exhibit simplicity, directness of
expression, and high-performance on both CPU and GPU architectures when
executed on either interpreted or compiled platforms across a wide range of
data sizes, as exemplified and expounded by the exposition of a complete
compiler for a lexically scoped, functionally oriented programming commercial
language. The entire source code to the compiler written in this method
requires only 17 lines of simple code compared to roughly 1000 lines of
equivalent code in the domain-specific compiler construction framework,
Nanopass, and requires no domain specific techniques, libraries, or
infrastructure support. It requires no sophisticated abstraction barriers to
retain its concision and simplicity of form. The execution performance of the
compiler scales along multiple dimensions: it consistently outperforms the
equivalent traditional compiler by orders of magnitude in memory usage and run
time at all data sizes and achieves this performance on both interpreted and
compiled platforms across CPU and GPU hardware using a single source code for
both architectures and no hardware-specific annotations or code. It does not
use any novel domain-specific inventions of technique or process, nor does it
use any sophisticated language or platform support. Indeed, the source does
not utilize branching, conditionals, if statements, pattern matching, ADTs,
recursions, explicit looping, or other non-trivial control or dispatch, nor
any specialized data models.
---------------------------------------------------
Wow!


Thanks for the reference Elijah!


/Roger


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.