An Intro to AVX-512 Assembly Programming - Comments

In summary: No idea. I’m a C++ developer, so I don’t use Netbeans.I'm a java developer so that’s why we see those tips in Netbeans as part of the javadoc builtin comments.In summary, AVX-512 is a set of new instructions that are designed for use in parallel add operations. They are geared for matrix operations and are slated for release with the Ice Lake microarchitecture this year or next.
  • #1
37,771
10,141
Greg Bernhardt submitted a new blog post

An Intro to AVX-512 Assembly Programming
AVX-512_Assembly_Programming.png


Continue reading the Original Blog Post.
 

Attachments

  • AVX-512_Assembly_Programming.png
    AVX-512_Assembly_Programming.png
    5.9 KB · Views: 620
  • Like
Likes QuantumQuest, jedishrfu and Greg Bernhardt
Technology news on Phys.org
  • #2
Very cool subject. Thanks! :smile:
 
  • #3
Very cool, will this technology be integrated into Machine Learning applications as it seems its geared for matrix operations doing parallel adds like that.

Also I found some videos on Youtube covering the topic in more detail for those of us who are reading challenged.
 
  • #4
jedishrfu said:
Very cool, will this technology be integrated into Machine Learning applications as it seems its geared for matrix operations doing parallel adds like that.
No idea -- I don't know much of anything about machine learning or neural network algorithms or the like. If they involve working with matrices, then this stuff is applicable.

jedishrfu said:
Also I found some videos on Youtube covering the topic in more detail for those of us who are reading challenged.
This article is the first in a series of five or more. What I covered in the first article is a bit of background history and a very simple example, for which lots of documentation and examples already exist. In the next few articles I plan to talk about other AVX-512 instructions for which 1) the Intel documentation is very minimal, and 2) there are no usage examples online (if there are any, I couldn't find them after long searches), let alone videos.

"Real programmers don't need no stinkin' videos!" :oldbiggrin:
 
  • Like
Likes Greg Bernhardt
  • #5
So true, REAL programmers don't read either until they have a problem with their code, if ever.
 
  • #6
In the next installment, I'll look at how you can go through a fairly large array of signed numbers, separating out the positive and negative values, and generating totals for each, without using any kind of decision control structures (i.e., no if statements).

Coming Real Soon...
 
  • #7
jedishrfu said:
So true, REAL programmers don't read either until they have a problem with their code, if ever.
But if you're working with an API that you aren't intimately familiar with, you need to have the API docs very handy.
 
  • Like
Likes jedishrfu
  • #8
I usually start with example code in Netbeans where little api help tips pop up. Only when I hit a bigger issue do I need to delve into the reference docs. It’s coding on the edge of a precipice.
 
  • #9
jedishrfu said:
where little api help tips pop up
LOL! There are zero API help tips that pop up in my VS IDE. Maybe the Intel C/C++ compiler has them, or maybe not - don't know 'cause I don't have that compiler. I'm reasonably sure they don't pop up in the Gnu compiler, either. That's why I keep the PDF of the Intel Software Developer's Manual open when I'm writing that code.
 
  • #10
jedishrfu said:
will this technology be integrated into Machine Learning applications
It occurred to me later that one of the parts of AVX-512 is VNNI, or Vector Neural Network Instructions. It isn't here now, but is slated to be released with the Ice Lake microarchitecture, the 10th gen Core architecture. The release is slated for sometime this year or next.

There's also another part, GFNI, Galois Field New Instructions, that are also tied to the Ice Lake microarchitecture.
At this point, there are 18 separate subsets of the AVX-512 instruction set, not all of which have been released just yet. My new computer, with its Xeon Silver 10-core processor, supports 5 of those subsets.
 
  • #11
I’m a java developer so that’s why we see those tips in Netbeans as part of the javadoc builtin comments.
 

FAQ: An Intro to AVX-512 Assembly Programming - Comments

1. What is AVX-512 assembly programming?

AVX-512 is a set of instructions for parallel processing on x86 processors. Assembly programming is the process of writing low-level code that directly controls the hardware, in this case, the x86 processor.

2. Why is AVX-512 important in the field of computer science?

AVX-512 allows for faster and more efficient processing of data, making it crucial for applications that require high performance, such as scientific simulations, artificial intelligence, and video rendering.

3. What are comments in AVX-512 assembly programming?

Comments are lines of text in the code that are meant to provide explanations or notes for the programmer. They are not executed by the processor and are only used for documentation purposes.

4. How do comments impact AVX-512 assembly programming?

Comments can improve the readability and understanding of code for programmers, making it easier to debug and maintain. They also allow for better collaboration and sharing of code among team members.

5. Are there any best practices for using comments in AVX-512 assembly programming?

Yes, it is recommended to use comments sparingly and only include relevant and concise information. It is also important to keep comments up to date and remove outdated ones to avoid confusion. Additionally, it is helpful to follow a consistent commenting style for easier understanding and organization of code.

Similar threads

Replies
2
Views
2K
Replies
5
Views
4K
Replies
2
Views
2K
Replies
11
Views
2K
Replies
25
Views
4K
Replies
2
Views
4K
Replies
2
Views
2K
Back
Top