<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://modelado.org/index.php?action=history&amp;feed=atom&amp;title=Compilers_Research_Questions</id>
	<title>Compilers Research Questions - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://modelado.org/index.php?action=history&amp;feed=atom&amp;title=Compilers_Research_Questions"/>
	<link rel="alternate" type="text/html" href="https://modelado.org/index.php?title=Compilers_Research_Questions&amp;action=history"/>
	<updated>2026-04-08T03:31:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://modelado.org/index.php?title=Compilers_Research_Questions&amp;diff=3007&amp;oldid=prev</id>
		<title>imported&gt;Mhall at 19:39, May 15, 2014</title>
		<link rel="alternate" type="text/html" href="https://modelado.org/index.php?title=Compilers_Research_Questions&amp;diff=3007&amp;oldid=prev"/>
		<updated>2014-05-15T19:39:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:39, May 15, 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l16&quot;&gt;Line 16:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 16:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Dependence Semantics ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Dependence Semantics ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;What new dependence semantics do you think are important, should the compiler take care of them or relegate to the runtime ?&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;What new dependence semantics do you think are important, should the compiler take care of them or relegate to the runtime ?&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Optimization Parameter vs. Code Variant Autotuning ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Autotuning typically derives a search space from a collection of different values for an optimization parameter (such as parallelism granularity or tile size), or from code variants that represent different implementations of the same computation.  How can a system unify autotuning of code variants and optimization parameters?  More generally, how might we unify the various search and learning algorithms into a common framework?&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Online vs. Offline Autotuning ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Much work on auto tuning focuses on offline search, which can be quite time-intensive and unsuitable for production runs. But exascale architectures are likely to have very dynamic behavior that must be considered in making tuning choices. Further, properties of input data, not known until run time, may influence tuning choices. What are the roles of offline and online auto tuning phases in an exascale regime?&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Expert Users and Autotuning ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;What is the appropriate role for expert users in building autotuning systems?&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Autotuning for Multiple Objectives ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;If performance is just one optimization criterion, how might an autotuning system support tuning for multiple objectives?&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key modwiki-mod:diff:1.41:old-3006:rev-3007:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Mhall</name></author>
	</entry>
	<entry>
		<id>https://modelado.org/index.php?title=Compilers_Research_Questions&amp;diff=3006&amp;oldid=prev</id>
		<title>imported&gt;Jsstone1: Created page with &quot;Below are the questions addressed in the Compiler Research Panel. Please add your comments (with you name) after each question. == Programming Language HW Architecture Feature...&quot;</title>
		<link rel="alternate" type="text/html" href="https://modelado.org/index.php?title=Compilers_Research_Questions&amp;diff=3006&amp;oldid=prev"/>
		<updated>2013-03-21T19:32:06Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Below are the questions addressed in the Compiler Research Panel. Please add your comments (with you name) after each question. == Programming Language HW Architecture Feature...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Below are the questions addressed in the Compiler Research Panel. Please add your comments (with you name) after each question.&lt;br /&gt;
== Programming Language HW Architecture Features ==&lt;br /&gt;
If a rewrite will help in bringing software to exascale, what requirements and opportunities flow to the programming language level in order to reach performance goals and also increase portability to future hardware architectures?  Can the benefits of language features tuned to new automatic mapping bring language adoption to critical mass?&lt;br /&gt;
== HW Architecture Compiler Techniques ==&lt;br /&gt;
What compiler techniques (new, old) are available to address the new requirements of the hardware architectures above?  Where are there gaps?&lt;br /&gt;
== Exascale Algorithms ==&lt;br /&gt;
What compiler techniques (new, old) are available to address the changing landscape of exascale algorithms?  Where are there gaps?&lt;br /&gt;
== Runtime and HW Flowdowns ==&lt;br /&gt;
What requirements and opportunities flow to hardware and runtimes based on new compiler technologies?   For example, with automatic communication generation optimizations are available, does this imply hardware or runtime should support richer communication primitives?&lt;br /&gt;
== Compiler vs Tool Manipulation Tools ==&lt;br /&gt;
What high level manipulation tools should be in the compiler vs tool driven by the user vs hand programmed/explicit code, and how can this relate to portability?&lt;br /&gt;
== Data, Task, and Code Location Support ==&lt;br /&gt;
What kinds of compiler support could there be to deal with data and code location with relocatable tasks?&lt;br /&gt;
== Intrinsics vs Annotations vs Autogeneration&lt;br /&gt;
What is the right mix between intrinsics vs annotations vs autogenerating for these new architectures/runtimes?&lt;br /&gt;
== Dependence Semantics ==&lt;br /&gt;
What new dependence semantics do you think are important, should the compiler take care of them or relegate to the runtime ?&lt;/div&gt;</summary>
		<author><name>imported&gt;Jsstone1</name></author>
	</entry>
</feed>