1,101 karma · joined January 24, 2018
How do you propose they do this? You can't magically move the physical devices to the other socket, and transferring the data between sockets is what those "NUMA-scheduling kludges" are trying to avoid. The only solution is to have software put the data close to the device.
There weren't many people that did this, so in my senior year the library decided that the books were a poor use of space, and started tagging books that hadn't been checked out for N years for removal (just with a sticker, I had to ask to find out what the tags were for). Then they started to remove the books, so the 10 aisle section (each aisle with 20 or so full size bookshelves) on physics got reduced down to ~3 shelves. I asked the librarians where they had gone, and they assured me that I shouldn't be concerned because they had just gone to storage, so they could still be requested if needed. But this change meant that instead of just quickly checking several relativity books (indices are great) when I needed further explanation, I would have to search in the catalog and individually request them, which took several orders of magnitude longer.
I have never seen a catalog with an interface that allows replicating the experience of walking through the stacks. Most interfaces allow you to find 1) popular books in some field which are almost always from the last decade or so and reflect what is currently hype, or 2) books with a particular title or author that you are already looking for.
I'm reminded of a study on the dynamics and distribution of academic citations over the past century. I can't seem to find it at the moment (maybe it was referenced in one of Carr's works), but I think the gist is that the breadth of citations has reduced substantially in the last decades. Rather than citing many different papers from many different times, papers have begun to cite that same most-cited papers over and over again (that show up first in the search results), if I recall correctly. Reading a single pdf excerpted from a journal is a very different experience from reading the same article in the physical journal, because in the second you end up flipping past all the other articles which may catch your eye. In the same vein, reading a single ebook (or even requested book from storage) is a very different experience that finding it on the shelf and maybe running across several other awesome books on the way.
It makes me very sad that centuries of knowledge from the best minds of humanity are getting shoved in storage, accessible only via search terms and the like, and replaced by couches where students can sit and browse Facebook/reddit/etc and occasionally work on schoolwork.
Intel is struggling because of their struggles with 10nm. Apple and AMD are not because TSMC has pulled off 7nm. Architecture matters, but process node matters a lot too.
Anyway, that's not the same vulnerability as any of those that have become public in the last 18 months.
Those professors aren't doing too bad now either, with plenty of papers to be published outlining the flaws and proposing solutions.
/s
Really, though, humanity is still pretty new to this whole computer architecture thing in general, and running untrusted code securely in particular. Im skeptical that someone at Intel was aware for the possibility of vulnerabilities for 10+ years before any of them were made public.
To be honest, I'm a little perplexed by the animosity directed towards Intel after all these vulnerabilities. Vulnerabilities in software are most frequently the result of ignorance, but everyone seems to assume the engineers and managers at Intel knew better (or should have know better). Who would have told them?
Like this:
> The DFT over the reals is not lossless. Using floats, for example, and applying it to max_float overflows, so cannot be inverted.
I don't see why you make statements about the reals based on what happens with floats. They aren't the same, and the DFT exists independently of actually computing it.
> The FFT using real numbers is not lossless
The DFT over the reals is invertible, right? How can it be invertible but not lossless?
I'm not really that convinced anyone is substantially closer to artificial general intelligence that anyone was in the 50s or 60s, and I think it's fun to imagine what Bell Labs might have achieved if they decided to focus all of their efforts on creating artificial general intelligence. Not much, I would think.
> a bet in the future being better than today
No, it's a bet that openai will create general intelligence and make a profit off of it in some timeframe such that it doesn't make more sense to get your 100x returns through ordinary means. OpenAI can achieve this without the "future being better than today," and conversely the future can be better than today without OpenAI achieving this.
This could change, and I'd love to see that, but without improved "programmability" FPGAs will remain niche. I haven't followed the latest developments very closely, but Xilinx seems to be moving in this direction with Everest through the addition of vector cores.
It's worth noting that GPUs are only "in order" because the computer architecture community has decided that "out of order" means "some variation of Tomasulo." Every GPU architecture in the last decade has relied extensively on executing (and committing) instructions in a single instruction stream out of order.
Doing a bunch of math while waiting for memory operations to complete is fundamental to high performance. Modern GPUs cannot achieve anywhere close to peak performance without extensive ILP - relying on latency hiding via threads is insufficient.
Sounds to me like they were recycling some old cloth simulation code from previous games and it needed to be optimized for Xbox one for the release of the new game.
IIRC his kernels shipped in cuBLAS at some point.
From your link:
"New Frontiers for Material Modeling via Machine Learning Techniques"
"Large scale deep neural network optimization for neutrino physics"
"High-Fidelity Simulations of Gas Turbine Stages for Model Development using Machine Learning"
"HPC4mfg – Reinforcement Learning-based Traffic Control to Optimize Energy Usage and Throughput"
"Advances in Machine Learning to Improve Scientific Discovery"
> software has a constant tendency to get slower, absent deliberate and careful efforts to hold the line, as developers add features and complexity. And if slower processes don’t immediately impact performance (because they only hold read locks), they’re more likely to go unnoticed. Thus, it’s not unlikely that over time read lock durations will creep upwards, mostly without effect, until one happens to coincide with an attempt to grab a write lock.
For me, the takeaway here is to maintain discipline in software regarding locking behavior. It's almost always a bad idea to hold a lock (rw or not) for an extended period of time.
Notably, this is how the Linux kernel developers responded to the case linked in the discussion of mmap_sem - the operation quadratic in number of threads was thrown out to avoid holding the rwsem for extended periods of time.
Also, re "and the lock is held by readers for a significant length of time": I would imagine that Rusty Russell would consider a few microseconds a "significant length of time" and wonder if you were insane if your software held a lock for 60 seconds.
"Exascale Deep Learning for Climate Analytics" won the 2018 Gordon bell using summit.
Would you mind pointing me in the right direction to learn about how to do this? (something equivalent to slide 2 of https://www.olcf.ornl.gov/wp-content/uploads/2018/12/summit_... but for mobile/APU)?
"fully coherent single address space with all memory available to [all processors]" is a lot easier if there is no virtual memory, no caching, and all processors are on a single shared bus to the same memory chips.