Author Topic: AVX-512, what’s useful for us  (Read 1049 times)

fearless

  • Member
  • ***
  • Posts: 345
    • LetTheLightIn
AVX-512, what’s useful for us
« on: December 23, 2017, 06:39:22 AM »
Interesting to read that the avx-512 has issues:

http://obe.tv/about-us/obe-blog/item/50-avx-512-what-s-useful-for-us

and the link in that article from cloudflare as well:

https://blog.cloudflare.com/on-the-dangers-of-intels-frequency-scaling/
fearless

CM690II Case, HX1000 PSU, Asus Z97, Intel i7-4790K, Seidon 120v Cooler, 16GB DDR3, MSI GTX 980TI

www.LetTheLight.in  My Github  Twitter

Gunther

  • Member
  • *****
  • Posts: 3585
  • Forgive your enemies, but never forget their names
Re: AVX-512, what’s useful for us
« Reply #1 on: December 23, 2017, 12:27:12 PM »
Hi fearless,

every new instruction set has some problems. Here is another link into Intel's Developer Zone.
Quote from: Agner Fog
I will repeat what I have argued before, that instruction set extensions should be discussed in an open forum before they are implemented. This is the best way to prevent lapses and short-sighted decisions like these ones.
Amen to that. On the other hand, there are a lot of advantages, too. We've to live with the situation and a lot of testing effort in the future, because Intel has plans for further AVX-512 extensions.

Gunther
Get your facts first, and then you can distort them.

jj2007

  • Member
  • *****
  • Posts: 8619
  • Assembler is fun ;-)
    • MasmBasic
Re: AVX-512, what’s useful for us
« Reply #2 on: December 23, 2017, 07:08:37 PM »
When I read the comments in the cloudflare thread, I realise that I am just a hobby coder :(

felipe

  • Member
  • ****
  • Posts: 897
  • Eagles are just great!
Re: AVX-512, what’s useful for us
« Reply #3 on: December 24, 2017, 03:49:03 AM »
Don't think so, didn't see there nothing special. While we don't see any code or work finished, we just see people commenting like hobbyist (or geeks maybe). I guess there are too many people who like to talk and just to know about the latest technology, but doesn't imply, whatsoever, than this same people had done some coding or good programming works.  :idea:
Felipe.

Vortex

  • Member
  • *****
  • Posts: 1821
Re: AVX-512, what’s useful for us
« Reply #4 on: December 24, 2017, 04:32:00 AM »
I agree with Felipe. A lot of mumbo jumbo talks with not much sign of creativity. I can give another example : many members of Canon and Nikon forums like to talk about their "shiny" gear : the latest digital cameras, expensive telephoto lenses etc. They have probably the best equipment but no indication of real creativity when it comes to share their photos taken with their high-tech stuff : a good or nice photograph is about finding the right angle under suitable light conditions with photographic intuition. What was the secret of the famous photojournalists William Eugene Smith and Henri Cartier-Bresson taking great shots with much more modest cameras?

hutch--

  • Administrator
  • Member
  • ******
  • Posts: 5659
  • Mnemonic Driven API Grinder
    • The MASM32 SDK
Re: AVX-512, what’s useful for us
« Reply #5 on: December 24, 2017, 06:53:16 AM »
I have seen what Erol is talking about, I have been into photography for a very long time so I have ended up owning a lot of gear but I have usually bought it on a needs basis but I have also seen people who own a range of very expensive toys in photography that don't even know how to use them. I only begrudgingly bought another Pentax camera as my 2004 model was getting left behind so I looked around and bought a 24 megapixel Pentax as I need to keep a current SLR.

In relation to computer processors, long ago I learnt, spend what you must to get high quality stuff that will last a few years and have the capacity to write most of the latest instructions. To properly utilise it you put it in a high quality reliable board, get a decent BIG power supply so it lasts long enough and heat sink the cpu with something big enough to cool a car engine. Build a box like this and you will usually get 5 years out of it and it ends up cheaper than buying a junky one every year or so.

As far as instruction sets, if you want a wide range of people to use the software you write, write it using the trailing edge of instruction sets as the vast majority of people don't own the latest offering from Intel/AMD. I have always laughed when I see people use later API functions that can only be used on later versions of the OS, Windows in this context but with mnemonics, most of the grunt work is still done in historical integer instructions rather than AVX and legacy SSE instructions so to be able to run on a wide enough range of machines, you need processor detection and a set of alternative procedures so that older hardware can run the software.

I have done some exploratory work in AVX but if you want to write Windows software, you still have to shovel through a mountain of API code to get there.
hutch at movsd dot com
http://www.masm32.com    :biggrin:  :biggrin:

jj2007

  • Member
  • *****
  • Posts: 8619
  • Assembler is fun ;-)
    • MasmBasic
Re: AVX-512, what’s useful for us
« Reply #6 on: December 24, 2017, 08:05:22 AM »
All that is perfectly correct, but that doesn't change my analysis: The guys who wrote these comments work in another league. Cloudflare is a fairly big provider, and if their server specialists consider a 7% improvement highly significant, you can imagine how much money stays behind their decisions regarding CPUs. Their know their stuff.

Gunther

  • Member
  • *****
  • Posts: 3585
  • Forgive your enemies, but never forget their names
Re: AVX-512, what’s useful for us
« Reply #7 on: December 24, 2017, 09:22:38 AM »
Jochen,

The guys who wrote these comments work in another league. Cloudflare is a fairly big provider, and if their server specialists consider a 7% improvement highly significant, you can imagine how much money stays behind their decisions regarding CPUs. Their know their stuff.
Let me say yes and no. As you wrote: they are highly specialized in server maintaining and the adjacent areas. You've a lot of such companies: Excellent in a special direction and not much else. But do they have the necessary knowledge about compiler building and system programming? I think that was Hutch's, Erol's and Felipe's point.

We've recently a lot of such companies here in Berlin, some quite successful, others not. I'll give you an example. Last week I had a request from a company asking if I could do this job. Do not ask me how they found me, please. I have no idea. Anyway, they do everything with C++:
Quote from: think-cell
Even our customer portal is written in C++

Wow. But continue:
Quote from: think-cell
We do lots of reverse engineering with the disassembler IDA from Hex-Rays, in order to achieve things that are not possible via the documented Microsoft Office API.
A company which uses IDA, who would have thought that. And now:
Quote from: think-cell
We wrote probably the best function hooking engine out there. On each start of our software, we patch the Microsoft Office executables in memory. Rather than hard-coding patch addresses, we search for small chunks of assembly code to be robust against minor changes in the executables.
Surprise, surprise: assembly language for function hooking. Hutch did hook interrupt service routines since the good old DOS days. So everyone knows, that DOS interrupts were not re-intrant, so the only chance is to hook the entire function. But this technique has been well known for a long time. It's just new and revolutionary for the generations of high-level programmers who spit out the universities every year. That's the point.

To sum up: I accepted the job offer under certain circumstances, because Pecunia non olet (money doesn't stink). After all, they offer an annual salary of 120,000 Euros; that is not so bad. The company knows how old I am and we'll see how the young people react, listen to the latest rap songs every day, when I play the Stones, Toto or van Halen. It sure will be funny.

Gunther
Get your facts first, and then you can distort them.

hutch--

  • Administrator
  • Member
  • ******
  • Posts: 5659
  • Mnemonic Driven API Grinder
    • The MASM32 SDK
Re: AVX-512, what’s useful for us
« Reply #8 on: December 24, 2017, 09:39:17 AM »
I don't see what the big deal is about, x86/64 has long had a reasonably well understood loss on each thread that is used. Separate their discussion from Unix speak and it addresses something very common, break a task up into multiple threads, clock the original single thread to get its timing them see what you get as a gain from each additional thread. Somewhere around 80% was the common figure gain for each additional thread.

I also don't see the point of whining about the power saver aspects of recent Intel hardware. This Haswell E/EP that I am using runs at 140 watts and I have to use a very large liquid cooler for it due to its power usage, try dragging double the calculations out of a processor and it will get hotter. The solution is more processors, not winding the wick up on existing ones. If you really want a multi-processor setup, the Itanium was designed for that task, think of JPL with 512 parallel Itaniums.
hutch at movsd dot com
http://www.masm32.com    :biggrin:  :biggrin:

jj2007

  • Member
  • *****
  • Posts: 8619
  • Assembler is fun ;-)
    • MasmBasic
Re: AVX-512, what’s useful for us
« Reply #9 on: December 24, 2017, 01:00:08 PM »
Sounds interesting. We will be waiting for your questions :biggrin:
Quote
On each start of our software, we patch the Microsoft Office executables in memory
...
think-cell was founded on the idea for an algorithm for automatic slide layout
...
We employ ... DirectX on Windows to render our own user interface on top of PowerPoint's and Excel's window contents.
::)