Previous | Next --- Slide 10 of 63
Back to Lecture Thumbnails
potato

Why is the "performant" optimization not done for those outside of domain-specific programming systems? Or is that simply left up to the programmer?

fromscratch

@potato That's a good question. I think the key point is that generality/completeness are at odds with specialized optimizations. Compilers for general-purpose languages are great at "local" small-scope optimizations but DSLs often impose a structure [and other assumptions] so rigid about the control flow or data structures [etc.] that the system can easily port specialized optimizations to many programs. We're seeing this for graph systems, where there's basically one or two underlying algorithms [e.g., dense and sparse edge map] and the user is forced to cast the application in this form. The system can then easily be tuned with strong assumptions.

Please log in to leave a comment.