8 ms·
The Snapdragon 855's iGPU
- kllrnohj 3y ago> Qualcomm’s OpenCL runtime would unpredictably crash if a kernel ran for too long. Crash probability goes down if kernel runtimes stay well below a second. That’s why some of the graphs above are noisy. I wonder if Qualcomm’s Adreno 6xx command processor changes had something to do with it. They added a low priority compute queue, but I’m guessing OpenCL stuff doesn’t run as “low priority” because the screen will freeze if a kernel does manage to run for a while. Very few (if any) mobile class GPUs actually support true preemption. Rather they are more like pseudo-cooperative, with suspend checks in between work units on the GPU. Desktop GPUs only got instruction-level preemption not that long ago - Nvidia first added it with Pascal (GTX 10xx), so mobile still lacking this isn't surprising. It's a big cost to pay for a relatively niche problem. So the "crash" was probably a watchdog firing for failing to make forward progress at a sufficient rate and also why the screen would freeze. The smallest work unit was "too big" and so it never would yield to other tasks.
- kimixa 3y ago> Desktop GPUs only got instruction-level preemption not that long ago And even then it's often limited to already scheduled shaders in the queue - things like the register files being statically allocated at task schedule time means you can't just "add" a task, and removing a task is expensive as you need to suspend everything, store off the (often pretty large) register state and any used shader local data (or similar), stop that task and deallocate the shared resources. It's avoided for good reason, and even if it's supported likely a rather untested buggy path. If you run an infinite loop on even the latest Nvidia GPU (with enough instances to saturate the hardware) you can still get "hangs", as it ends up blocking things like composition until the driver kills the task. It's still nowhere near the experience CPU task preemption gives you.
- darksaints 3y agoI've been wanting to do an AskHN for this, but seeing as the Snapdragon855 is directly related to my question, I'm hoping someone here has some insights that could point me in the right direction. I'm currently developing a specialized UAV, and I've gotten to the point where I've got MCU-based FC hardware almost running that is based off of open source Pixhawk designs. But the long term plan is to introduce a variety of tasks that rely on computer vision and/or machine learning, and so the general approach is to go with a companion computer. It seems the default choice for things like this in the prototype stage is a raspberry Pi or Jetson module, but I would really like to develop the entire system as a single module with an eye toward serial production, which means I'm looking at embedding an SOC, as opposed to wiring up an external module. And that has led me to look at the Snapdragon SOCs, in large part due to the GPU capabilities. But now I'm getting into unfamiliar territory, because I can't do ordering/research via digikey like I have done with everything else up until now. When we're talking about new development, what are the expectations that I should have for direct procurement of higher end components (this goes for Sony/Samsung camera sensors too)? Are there typically very large minimum purchase quantities? Do I have to already have a large production output before I can even talk to them about it? Is it possible to get datasheets even if I'm not at that stage yet? I get the feeling I'm stuck with the Jetson + Off-the-shelf camera approach until I can demonstrate the ability to mass produce and sell my existing designs, but it would be nice if I could find out more about how that is supposed to play out.
- echoangle 3y agoI would stick to mounting SoMs on your PCB until you have a clear need for something else, integrating a SoC onto a PCB isn’t trivial, you need to take a lot of care of signal paths and RF properties.
- user_7832 3y agoDisclaimer, I'm not an expert in this field. If you're hoping to commercialize and are a 1-man company, I hope you have a good USP/feature that's beyond "it's cheaper than the competition". If you do have that, I'd say just get an MVP out while keeping systems as platform agnostic as you can. Doesn't matter if you need an extra Jetson, if your product is good enough the extra cost shouldn't really deter customers. Once you've started, hire/contract folks and streamline it out. BTW Dev kits do exist for the snapdragon 8 gen 2/3 I think, but they're about $700 last I checked. If you're handy you could even try to reuse a rooted phone, if that's feasible for you.
- adrian_b 3y agoAn alternative to Jetson are the SBCs or SOMs based on MediaTek Genio 1200 (MTK MT8395). The CPU included in this is based on the same Cortex-A78 cores as the latest Jetson Orin, but it should have much better performance per dollar, because the cheaper Jetson variants are intentionally crippled, with many disabled cores and very low maximum clock frequency. The GPU is weaker than on Jetson Orin, but it should be enough for many applications. There are also a couple of AI accelerators and dual simultaneous video camera capture at high resolution. In any case, Genio 1200 is much faster than any Pi and also than RK3588. It has a similar performance to a flagship smartphone of 2021. In the beginning, the SOMs and SBCs with Genio 1200 were expensive, in the $400 to $500 range, so while they were a better deal than Jetsons they still had worse performance per dollar than a SOM or SBC made with an Intel N100 CPU (or its Atom equivalent). However not long ago Radxa NIO 12L has been announced, which uses Genio 1200 in a SBC of smartphone size at a price of not much over $100, similar to the older and slower RK3588. Therefore it appears that it has become possible to obtain Genio 1200 at a decent price. Perhaps if you contact MediaTek sales they might be more willing to provide design information than Qualcomm and they certainly have better prices. Moreover the Radxa NIO 12L schematics and PCB assembly map are published on their site (a practice that was standard many decades ago, including for the leading US companies, but which now sadly survives mostly in Chinese companies), you can download them and study them to evaluate the effort of designing your custom board and possibly avoid any pitfalls in your design.
- jimmySixDOF 3y agoNice. Should probably include the year in the title (2019?) but it's interesting to me because even the latest 2024 XR2+ Gen2 is based on the Snapdragon 865 with almost the same iGPU which may mean there is a technical benefit (vs just extra cost) from not using the newer 888s
- helf 3y agoThe year is... He posted it yesterday lol.
- crest 3y agoDid you read the date of publication of the article benchmarks or did you just blindly assume the author published them on the day the embargo on publishing benchmarks for the chip fell?
- TehCorwiz 3y agoI'm not disputing your suggested date, but I can't find it anywhere in the article. Can you explain where you got it?
- adrian_b 3y agoThe article is new, only the tested CPU+GPU is from 2019. Snapdragon 855 was indeed the chipset used in most flagship Android smartphones of 2019. I have one in my ASUS ZenFone. Based on the big ARM cores that are included, it is easy to determine the manufacturing year of a flagship smartphone. The cheaper smartphones can continue to use older cores. Arm announces a core one year before it becomes used in smartphones. Cortex-A72 => 2016 Cortex-A73 => 2017 Cortex-A75 => 2018 Cortex-A76 => 2019 (like in the tested Snapdragon 855) Cortex-A77 => 2020 Cortex-X1 => 2021 Cortex-X2 => 2022 Cortex-X3 => 2023 Cortex-X4 => 2024
- jamesy0ung 3y agoI didn't realise the cores in the Pi 5 were 4 years old already. Surely if some vendor like qualcomm or mediatek released a sbc with decent software and recent cores, they could sweep the floor.
- ffrrrrtu 3y ago[flagged]
- netbioserror 3y agoiGPUs have climbed high enough that they are overpowered for "normal" tasks like video watching and playing browser games. They can even do 1080p 60 FPS gaming to a decently high standard. And we've already proven via ARM that RISC architectures are more than ready for everything from embedded to high-power compute. What happens when iGPUs get good enough for 1440p 120 FPS high-end gaming? Game visuals have plateaued on the rasterization front. Once iGPUs are good enough, nobody will have much reason to get anything other than a tiny mini PC. The last frontier for GPUs will be raw supercomputing. Basically all PCs from there on out will just be mini machines. The next few years will be very interesting.
- stefan_ 3y agoThe same as always, we crank up the resolution? Sorry to say but your 1080p and 1440p is already a few years behind, so "the next few years" aren't terribly exciting.
- hyperthesis 3y agoThere's still real-time ray-tracing. Cosmetic physics can eat up more, but as a gameplay mechanic, user interaction with realistic physics are too unpredictable (beyond a gimmick). Of course, we could then get actual computer sports.
- jsheard 3y agoMemory bandwidth is the major bottleneck holding iGPUs back, the conventional approach to CPU RAM is absolutely nowhere near fast enough to keep a big GPU fed. I think the only way to break through that barrier is to do what Apple is doing - move all of the memory on-package and, unfortunately, give up the ability to upgrade it yourself.
- ryukafalz 3y agoIf so I would like to see more of what the MNT Reform[0] is doing. You can have your CPU, GPU, and memory all on a single board while still making that board a module in a reusable chassis. There's no reason the rest of the device needs to be scrapped when you upgrade. [0] https://mntre.com/modularity.html https://mntre.com/modularity.html