Lion Cove: Intel's P-Core Roars
chipsandcheese.com
chipsandcheese.com
Most of the bandwidth comes from cache hits, but for those rare workloads larger than the caches, Apples products may be 2-8x faster?
And there's very little benefit to widening the memory bus past 128-bit unless you have a powerful GPU to make good use of that bandwidth. There are comparatively few consumer workloads for CPUs that are sufficiently bandwidth-hungry.
I suspect consumer workloads to rise
Of course there are enthusiasts, but I suspect that they prefer and will continue to prefer dedicated inference hardware.
Do you use FTP instead of Dropbox?
( Couldn't resist (^.^) )
M2 Max is passively cooled... and does 1/2 of 4090's token bandwidth in inference.
We've observed the same on web pages where more and more functionality gets pushed to the frontend. One could push the last (x) layers of the neural net for example, to the frontend, for lower expense and if rightly engineered, better speed and scalability.
AIs will be local, super-AIs still in the cloud. Local AIs will be proprietary and they will have strings to the mothership The strings will have business value both related to the consumer and for further AI training.
From what I’ve seen, most people tend to use cloud document platforms. Microsoft has made Office into one. This has been the steady direction for the last few years; they’ll keep pushing for it, because it gives them control. Native apps with local files is an inconvenient model for them. This sadly applies to most other types of apps. On many of these cloud platforms, you can’t even download the project files.
> You can't really have an AI for your local documents on the cloud because the cloud doesn't have access
Yes, up to the cloud it all goes. They don’t mind, they can charge you for it. Microsoft literally openly wants to move the whole OS to the cloud.
> Same logic for businesses
Businesses hate local files. They’re a huge liability. When firing people it’s very convenient that you can just cut someone off by blocking their cloud credentials.
> We've observed the same on web pages where more and more functionality gets pushed to the frontend
It will never go all the way.
> One could push the last (x) layers of the neural net for example, to the frontend, for lower expense and if rightly engineered, better speed and scalability
I’ll believe it when I see it. I don’t think the incentive is there. Sounds like a huge complicating factor. It’s much simpler to keep everything running in the cloud, and software architects strongly prefer simple designs. How much do these layers weigh? How many MB/GB of data will I need to transfer? How often? Does that really give me better latency than just transferring a few KBs of the AIs output?
200+ Gb/sec (IIRC Anandtech measured 240 Gb/sec) per a cluster.
Pro is one cluster, Max is two clusters and Ultra is four clusters, so the accumulative bandwidth is 200, 400 and 800 Gb/sec respectively[*].
The bandwidth is also shared with GPU and NPU cores within the same cluster, so on combined loads it is plausible that the memory bus may become fully saturated.
[*] Starting with M3, Apple has pivoted Pro models into more Pro and less Pro versions that have differing memory bus widths.
95GB/s is 24GB/s per core, at 4.8Ghz that's 40 bits per core per cycle. You would have to be doing basically nothing useful with the data to be able to get through that much bandwidth.
Any number of cores with any count and any width of SIMD functional units can reach the maximum throughput, as long as it can be ensured that the data can be found in the L1 cache memories at the right time.
So the limitations on the number of cores and/or SIMD width and count are completely determined by whether in the applications of interest it is possible to bring the data from the main memory to the L1 cache memories at the right times, or not.
This is what must be analyzed in discussions about such limits.
The right way to express a matrix multiplication is not that wrongly taught in schools, with scalar products of vectors, but as a sum of tensor products between the column vectors of the first matrix with those row vectors of the second matrix that share with them the same position of the element on the main diagonal of the matrix.
Computing a tensor product of two vectors, with the result accumulated in registers, requires a number of memory loads equal to the sum of the lengths of the vectors, but a number of FMA operations equal to the product of the lengths (i.e. for square matrices of size NxN, there are 2N loads and N^2 FMA for one tensor product, which multiplied with N tensor products give 2N^2 loads and N^3 FMA operations for the matrix multiplication).
Whenever the lengths of both vectors are are no less than 2 and at least one length is no less than 3, the product is greater than the sum. With greater vector lengths, the ratio between product and sum grows very quickly, so when the CPU has enough registers to hold the partial sum, the ratio between the counts of FMA operations and of memory loads can be very great.
Modern chips do face the memory wall. See eg here (though about Zen 5) where they in the same vein conclude "A loop that streams data from memory must do at least 340 AVX512 instructions for every 512-bit load from memory to not bottleneck on memory bandwidth."
Therefore to reach the maximum throughput, you must have the data in the L1 cache memory. Because L1 is not shared, the throughput of the transfers from L1 scales proportionally with the number of cores, so it can never become a bottleneck.
So the most important optimization target for the programs that use AVX-512 is to ensure that the data is already located in L1 whenever it is needed. To achieve this, one of the most important things is to use memory access patterns that will trigger the hardware prefetchers, so that they will fill the L1 cache ahead of time.
The main memory throughput is not much lower than that of the L1 cache, but the main memory is shared by all cores, so if all cores want data from the main memory at the same time, the performance can drop dramatically.
These cores cannot process 8 AVX512 instructions at once, in fact they can't do it at all, as it's disabled on consumer Intel chips.
Also, AVX instructions operate on registers, not on memory, so you cannot have more than one register being loaded at once.
If you are running at ~4 instruction per clock, to actually go ahead and saturate 40 bits per clock on 64 bit loads, you'd need 1/6 of instructions to hit main memory (not cache)!
The resemblance to the behavior of GPUs is not a coincidence, but it is because the GPUs are also mostly doing array operations.
So the general rule is that the programs dominated by array operations are sensitive mostly to the memory throughput.
This can be seen in the different effect of the memory bandwidth on the SPECint and SPECfp benchmark results, where the SPECfp results are usually greatly improved when memory with a higher throughput is used, unlike the SPECint results.
This processor has two lanes over 4 P-cores. Something like an EPYC-9754 has 12 lanes over 128 cores.
However, the high memory bandwidth is intended mainly for the benefit of its relatively big GPU, which might have been able to use even higher memory throughputs.
However, Strix Halo, which has a much bigger GPU, is designed for a maximum power consumption for CPU+GPU of 55 W or more (up to 120 W), while Lunar Lake is designed for 17 W, which explains the choices for the memory interfaces.
On the other hand, I do think it's fair to compare to the Max too, and it loses by a lot to that 512 bit bus.
Not 8000 or 8500 MT/s and thus the frequency is halved?
However that should have been obvious, because there will be no LPDDR5x of 16000 MT/s. That throughput might be reached in the future, but a different memory standard will be needed, perhaps a derivative of the MRDIMMs that are beginning to be used in servers (with multiplexed ranks).
MHz and MT/s is really the same unit. What differs is the quantity that is measured, e.g. the frequency of oscillations and the frequency of transfers. I do not agree with the method of giving multiple names to a unit of measurement in order to suggest what kind of quantity has been measured. The number of different quantities that can be measured with the same unit is very large. If the method of giving multiple unit names had been applied consistently, there would have been a huge number of unit names. I believe that the right way is to use a unique unit name, but to always specify separately what kind of quantity had been measured, because having only a numeric value and the unit is never sufficient information, without having also which quantity has been measured.
At those price levels, PC laptops have discrete GPUs with their own RAM with 256 GB/s and up just for the GPU.
https://github.com/intel/linux-npu-driver/blob/main/docs/ove...
The Linux driver is specific to Linux, but the software on top of that like oneAPI and OpenVINO are cross platform I think.
I bought a wifi7 card & tried it in a bunch of non-Intel systems, straight up didn't work. Bought a wifi6 card and it sort of works, ish, but I have to reload the wifi module and sometimes it just dies. (And no these are not cnvio parts).
I think Intel has a great amazing legacy & does super things. Usually their driver support is amazing. But these wifi cards have been utterly enraging & far below what's acceptable in the PC world; they are not fit to be called PCIe devices.
Something about wifi really brings out the worst in companies. :/
They might be CNVi in M.2 form factor, with the rest of the "wifi card" inside the Intel SoC.
In CNVi, the network adapter's large and usually expensive functional blocks (MAC components, memory, processor and associated logic/firmware) are moved inside the CPU and chipset (Platform Controller Hub). Only the signal processor, analog and Radio frequency (RF) functions are left on an external upgradeable CRF (Companion RF) module which, as of 2019 comes in M.2 form factor.
Wifi7 has 3-D radar features for gestures, heartbeat, keystrokes and human activity recognition, which requires the NPU inside Intel SoC. The M.2 card is only a subset.Source? Google turned up nothing.
EDIT: Right after that I found another HN comment [0] by the same user (through a google search!)!
[-1] Interesting IEEE rfc email thread on related to preamble puncturing
misc (I have not yet read these through beyond the abstracts): A preprint in ArXiV related to the proposed spec [1] A paper in IEEE Xplore on 802.11bf [2] NIST publication on 802.11bf [3] (basically [2] but on NIST)
[-1] https://www.ieee802.org/11/email/stds-802-11-tgbe/msg00711.h... [0] https://news.ycombinator.com/item?id=38811036 [1] https://arxiv.org/pdf/2207.04859 [2] https://ieeexplore.ieee.org/document/10467185 [3] https://www.nist.gov/publications/ieee-80211bf-enabling-wide...
How to do the actual sensing functions does not belong in a communication standard. What has been proposed, but I do not think that the standard amendment has been finalized, is to make some changes in the signals transmitted by WiFi stations, which would enable those desiring to implement sensing functions with the WiFi equipment to do that, without interfering with the normal communication functions.
So if Intel would create some program for Lunar Lake CPUs, possibly using the internal NPU, for purposes like detecting the room occupancy, that application would not be covered by the WiFi standard, the standard will just enable the creation of such applications and such an application would be equally implementable with any PCIe WiFi card conforming to the new standard, not only with an Intel CNVi card, whicd uses an internal WiFi controller.
However it is correct that there are 2 kinds of Intel WiFi cards that look the same (but they have different part numbers, e.g. AX200 for PCIe and AX201 for CNVi), but one kind of cards are standard PCIe cards that work in any computer, while the other kind of cards (CNVi) works only when connected to compatible Intel laptop CPUs.
It has been possible for years with custom firmware, search "device free wireless sensing" in Google Scholar.
> they would not be incorporated in a communication standard at this time.
One would hope so, right?
https://www.technologyreview.com/2024/02/27/1088154/wifi-sen...
When the new standard comes out in 2025, it will allow “every Wi-Fi device to easily and reliably extract the signal measurements,” Yang says. That alone should help get more Wi-Fi sensing products on the market. “It will be explosive,” Liu believes.. cases imagined by the committee include counting and finding people in homes or in stores, detecting children left in the back seats of cars, and identifying gestures, along with long-standing goals like detecting falls, heart rates, and respiration.
Wi-Fi 7, which rolls out this year, will open up an extra band of radio frequencies for new Wi-Fi devices to use, which means more channel state information for algorithms to play with. It also adds support for more tiny antennas on each Wi-Fi device, which should help algorithms triangulate positions more accurately. With Wi-Fi 7, Yang says, “the sensing capability can improve by one order of magnitude..”
WiGig already allows Wi-Fi devices to operate in the millimeter-wave space used by radar chips like the one in the Google Nest.. [use cases include] reidentifying known faces or bodies, identifying drowsy drivers, building 3D maps of objects in rooms, or sensing sneeze intensity (the task group, after all, convened in 2020).. There is one area that the IEEE is not working on, at least not directly: privacy and security.
In advance of the IEEE 802.11bf standard, Intel implemented presence detection with WiFi 6E starting with 2023 Meteor Lake sensors and NPU, https://www.intel.com/content/www/us/en/content-details/7651... Intel Wi-Fi can intelligently sense when to lock or wake your laptop
Walk Away Lock: Wi-Fi senses your departure & locks the PC in seconds
Wake on Approach: Wi-Fi senses your return & wakes the PC in seconds
Intel Labs 2023 PoC demo of breathing detection, https://community.intel.com/t5/Blogs/Tech-Innovation/Client/... The solution detects the rhythmic change in CSI due to chest movement during breathing. It then uses that information to detect the presence of a person near a device, even if the person is sitting silently without moving. The respiration rates gathered by this technology could play an important role in stress detection and other wellness applications.
> such an application would be equally implementable with any PCIe WiFi card conforming to the new standardYes, this would be possible on AMD, Qualcomm and other "AI" PCs.
Some Arm SoCs include NPUs that could be used by routers and other devices for WiFi sensing applications.
> looks like a hallucination or perhaps only a misinterpretation of proposed features
Is there a good term for reality conflicting with claims of hallucination and misinterpretation?
I can't think of a good one yet, I'm sure a year from now there will be one commonly used.
What triggered the assumption on my end (not the comment you're replying to) was your statement "Wifi7 has 3-D radar features for gestures, heartbeat, keystrokes and human activity recognition, which requires the NPU inside Intel SoC. The M.2 card is only a subset." - I initially couldn't find any good references, because Google was so filled with ChatGPT'd SEO spam (notable a bunch of circular references citing a Medium article, itself obviously LLM'd).
Apologies for my mistake there. You seem to know quite a bit about the subject. I'm definitely constantly on-guard with any claims these days, especially ones that have potentially terrifying implications, without a primary source.
Here are some recent HN threads on through-wall 2.4Ghz Wi-Fi Sensing with CSI radar and IEEE 802.11bf:
Surveilling the masses with wi-fi-based positioning systems (2024), 140 comments, https://news.ycombinator.com/item?id=40492234
The spies in your home: How WiFi companies monitor your private life (2024), 40 comments, https://news.ycombinator.com/item?id=41272294
Wild new Wi-Fi routers turn your home network into a security radar (2024), 40 comments, https://news.ycombinator.com/item?id=40897828
Inside a $1 radar motion sensor (2024), 100 comments, https://news.ycombinator.com/item?id=40834349
Already answered:
> And no these are not cnvio parts
(Oops, CNVi not cnvio.)
Can someone put this in context? The values seem order of magnitude higher than here: https://www.anandtech.com/show/16143/insights-into-ddr5-subt...
You could read the article on the latest AMD top of the line desktop chip to compare: https://chipsandcheese.com/2024/08/14/amds-ryzen-9950x-zen-5... (although that's a desktop chip, the original article compares the Intel performance to 128 ns of DRAM latency for AMD's mobile platform Strix Point)
The way CAS has been widely understood as "memory latency" is just wrong.
The anandtech article is latencies for parts of a memory operation, between the memory controller and the ram. End to end latency is going to be a lot more than just CAS latency, because CAS latency only applies once you've got the proper row open, etc.
The correct solution is that from the parent article, to continue to call the L1 cache memory as the L1 cache memory, because there is no important difference between it and the L1 cache memories of the previous CPUs, and to call the new cache memory that has been inserted between the L1 and L2 cache memories as the L1.5 cache memory.
Perhaps Intel did this to give the very wrong impression that the new CPUs have a bigger L1 cache memory than the old CPUs. To believe this would be incorrect, because the so called new L1 cache has a much lower throughput and a worse latency than a true L1 cache memory of any other CPU.
The new L1.5 is not a replacement for an L1 cache, but it functions as a part of the L2 cache memory, with identical throughput as the L2 cache, but with a lower latency. As explained in the article, this has been necessary to allow Intel to expand the L2 cache to 2.5 MB in Lunar Lake and to 3 MB in Arrow Lake S (desktop CPU), in comparison with AMD, which has an only 1 MB L2 cache (but a bigger L3 cache).
According to rumors, while the top AMD desktop CPUs without stacked cache memory have an 80 MB L2+L3 cache (16 MB L2 + 64 MB L3), the top Intel model 285K might have 78 MB of cache, i.e. about the same amount, but with a different distribution on levels: 2 MB L1.5 + 40 MB L2 + 36 MB L3. Nevertheless, until now there is no official information from Intel about Arrow Lake S, whose launch is expected in a month from now, so the amount of L3 cache is not certain, only the amounts of L2 and L1.5 are known from earlier Intel presentations.
Lunar Lake is an excellent design for all applications where adequate cooling is impossible, i.e. thin and light notebooks and tablets or fanless small computers.
Nevertheless, Intel could not abstain from not using unfair marketing tactics. Almost all the benchmarks presented by Intel at the launch of Lunar Lake have been based on the top model 288V. Both top models 288V and 268V are likely to be unobtainium for most computer models, while at the few manufacturers that will offer this option they will be extremely overpriced.
Most available and affordable computers with Lunar Lake will not offer any better CPU than 258V, which is the one tested in the parent article. 258V has only 4.8 GHz/2.2 GHz turbo/base clock frequencies, vs. 5.1 GHz/3.3 GHz of the 288V used in the Intel benchmarks and in many other online benchmarks. So the actual experience of most Lunar Lake users will not match most published benchmarks, even if it will be good enough in comparison with any competitors in the same low-power market segment.
And once more than like three Zen 5 laptops come out.
I’d expect lunar lake’s position to improve a bit in coming months as they tweak scheduling, but AMD should be good at this point.
Edit: around 16 mark, https://youtu.be/5OGogMfH5pU?si=ILhVwWFEJlcA3HLO. The laptops came with 24H2
Q: What do you call Windows with its UI translated to Hebrew? A: The L10N of Judah