Skip to content

Commit ebb0e85

Browse files
authored
Merge pull request #150 from codeplaysoftware/row-col-fix
Fix row-col major slides & add info on vec types
2 parents a1b98c0 + bbfea2f commit ebb0e85

File tree

9 files changed

+67
-27
lines changed

9 files changed

+67
-27
lines changed

Lesson_Materials/Lecture_16_Coalesced_Global_Memory/index.html

Lines changed: 67 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -148,44 +148,22 @@
148148
<div class="hbox" data-markdown>
149149
#### Row-major vs Column-major
150150
</div>
151-
<div class="container" data-markdown>
152-
![SYCL](./row_major_column_major_1.png "SYCL")
153-
</div>
154-
</section>
155-
<!--Slide 12-->
156-
<section>
157-
<div class="hbox" data-markdown>
158-
#### Row-major vs Column-major
159-
</div>
160-
<div class="container" data-markdown>
161-
![SYCL](./row_major_column_major_2.png "SYCL")
162-
</div>
163151
</section>
164-
<!--Slide 13-->
165152
<section>
166-
<div class="hbox" data-markdown>
167-
#### Row-major vs Column-major
168-
</div>
169153
<div class="container" data-markdown>
170-
![SYCL](./row_major_column_major_3.png "SYCL")
154+
![SYCL](./row_col_1.png "SYCL")
171155
</div>
172156
</section>
173-
<!--Slide 14-->
157+
<!--Slide 12-->
174158
<section>
175-
<div class="hbox" data-markdown>
176-
#### Row-major vs Column-major
177-
</div>
178159
<div class="container" data-markdown>
179-
![SYCL](./row_major_column_major_4.png "SYCL")
160+
![SYCL](./row_col_2.png "SYCL")
180161
</div>
181162
</section>
182-
<!--Slide 15-->
163+
<!--Slide 13-->
183164
<section>
184-
<div class="hbox" data-markdown>
185-
#### Row-major vs Column-major
186-
</div>
187165
<div class="container" data-markdown>
188-
![SYCL](./row_major_column_major_5.png "SYCL")
166+
![SYCL](./row_col_3.png "SYCL")
189167
</div>
190168
</section>
191169
<!--Slide 16-->
@@ -299,6 +277,68 @@
299277
</div>
300278
</section>
301279
<!--Slide 28-->
280+
<section>
281+
<div class="hbox" data-markdown>
282+
#### Vec types
283+
</div>
284+
<div class="container">
285+
<code class="code-100pc"><pre>
286+
auto f4 = sycl::float4{1.0f, 2.0f, 3.0f, 4.0f}; // {1.0f, 2.0f, 3.0f, 4.0f}
287+
</code></pre>
288+
</div>
289+
<div class="container">
290+
<code class="code-100pc"><pre>
291+
auto f2 = sycl::float2{2.0f, 3.0f}; // {2.0f, 3.0f}
292+
auto f4 = sycl::float4{1.0f, f2, 4.0f}; // {1.0f, 2.0f, 3.0f, 4.0f}
293+
</code></pre>
294+
</div>
295+
<div class="container">
296+
<code class="code-100pc"><pre>
297+
auto f4 = sycl::float4{0.0f}; // {0.0f, 0.0f, 0.0f, 0.0f}
298+
</code></pre>
299+
</div>
300+
<div class="container" data-markdown>
301+
* A `vec` can be constructed with any combination of scalar and vector values which add up to the correct number of elements.
302+
* A `vec` can also be constructed from a single scalar in which case it will initialize every element to that value.
303+
</div>
304+
</section>
305+
<!--Slide 11-->
306+
<section>
307+
<div class="hbox" data-markdown>
308+
#### Vec operators
309+
</div>
310+
<div class="container">
311+
<code class="code-100pc"><pre>
312+
auto f4a = sycl::float4{1.0f, 2.0f, 3.0f, 4.0f}; // {1.0f, 2.0f, 3.0f, 4.0f}
313+
314+
auto f4b = sycl::float4{2.0f}; // {2.0f, 2.0f, 2.0f, 2.0f}
315+
316+
auto f4r = f4a * f4b; // {2.0f, 4.0f, 6.0f, 8.0f}
317+
</code></pre>
318+
</div>
319+
<div class="container" data-markdown>
320+
* The `vec` class provides a number of operators such as `+`, `-`, `*`, `/` and many more, which perform the operation elemeent-wise.
321+
</div>
322+
</section>
323+
<section>
324+
<div class="hbox" data-markdown>
325+
#### Vec sizes
326+
</div>
327+
<div class="container">
328+
<code class="code-100pc"><pre>
329+
sycl::int2
330+
sycl::int3 (N.B sizeof(int3) == sizeof(int4))
331+
sycl::int4
332+
sycl::int8
333+
sycl::int16</code></pre>
334+
</div>
335+
<div class="container" data-markdown>
336+
* Vectors can be made from all char, integer or floating point types.
337+
* Using vector types:
338+
* Can make code more readable
339+
* Can give better memory access patterns.
340+
</div>
341+
</section>
302342
<section>
303343
<div class="hbox" data-markdown>
304344
## Questions
Loading
Loading
Loading
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)