|
i like this threade
|
# ? Sep 29, 2017 20:07 |
|
|
# ? May 4, 2024 17:05 |
|
i used to work for a company making a now-defunct mobile gpu (i just did video stuff, not 3d, so don't blame me too hard please) we ran into a problem with a game that didn't render properly because they had some code like code:
actually there's no point to this story but i've typed it now so here you go, my experience of gpu-related shittiness
|
# ? Sep 29, 2017 20:19 |
|
yeah i've done some stuff with caffe and its a great reminder of how army-of-grad-students-and-postdocs maintained this kind of stuff still is
|
# ? Sep 29, 2017 20:51 |
|
rjmccall posted:gpu hardware is the absolute worst and half of why gpu drivers are always terrible is that they are full of terrible workarounds for the broken-rear end hardware. they do not want to give you a specification for the hardware because an honest specification would have to say stuff like "never put a bundle with operations 1 and 2 immediately after a bundle with operation 3 or the gpu will hard lock" rjmccall posted:the vast majority of cpu errata involve system facilities where it's more understandable, like to take the first entries from the first google hit for intel errata: JawnV6 posted:even then, 50%+ errata only apply before a ucode patch is applied, but BIOS authors still need to be aware & avoid those situations so they're published posting these from the hn thread. i havent worked at any gpu company so i dont know all the dirty details but here
|
# ? Sep 29, 2017 21:35 |
|
having worked at two hardware companies: hardware is full of bugs and it's firmware writers' job to desperately try to hide all the shittiness from users
|
# ? Sep 29, 2017 21:54 |
|
Qwertycoatl posted:having worked at two hardware companies: hardware is full of bugs and it's firmware writers' job to desperately try to hide all the shittiness from users hardware is just software that's been etched into silicon. it's just as buggy. and it turns out that if you wait long enough, all hardware bugs become software's problem so #yolo
|
# ? Sep 29, 2017 21:59 |
|
The Management posted:hardware is just software that's been etched into silicon. it's just as buggy. and it turns out that if you wait long enough, all hardware bugs become software's problem so #yolo yeah, fairly often i come across people who think hardware isn't buggy. i don't know whether to laugh or drink
|
# ? Sep 29, 2017 22:04 |
|
Qwertycoatl posted:yeah, fairly often i come across people who think hardware isn't buggy. i don't know whether to laugh or drink they go together really well also: a really fun thread for people like me, who knows very little about this at depth despite being strangely invested in it for several decades
|
# ? Sep 29, 2017 22:16 |
|
also please remember that gamers suck. they are extremely gullible to marketing while barely understanding what game developers actually do. gamers generally have a lot of misconceptions about how graphics and gpus actually work because marketing for these companies relies on tricking people into thinking "numbers and specs matter" nvidia absolutely loves when /r/pcmasterrace continues to spew garbage about gigabit clock speeds and the number of smx per sli slot because they can sell more things to more idiots but it makes it hard to figure out how any of this poo poo actually works.
|
# ? Sep 29, 2017 22:31 |
|
lancemantis posted:so i was doing some ML stuff at work and we have a bunch of servers with as many titans as we can fit/buy at the time because there are shortages shoved into them for this purpose tell your server monkeys to use nvidia-smi to set compute mode to default/shared instead of exclusive (usually will make things worse when inexperienced people are actually using the cards; welcome to the social) fritz posted:it's so horrible for big centers the minimum scheduled increment is usually the node gently caress you doing there if you need less than a thousand midsize centers usually have some workload software that does moderate fuckery to split up nodes and gpus per user
|
# ? Sep 29, 2017 22:32 |
|
The Management posted:hardware is just software that's been etched into silicon. it's just as buggy. and it turns out that if you wait long enough, all hardware bugs become software's problem so #yolo wait so what you're saying is as a gpu you either die as a villain or are patched enough to be a hero?
|
# ? Sep 29, 2017 22:37 |
|
Beast of Bourbon posted:the biggest of the big games might have direct support from amd/nvidia but when i was working on some AAA "big" games but not like...super mega huge, we'd have an nvidia or amd rep come by the studio with a handful of new cards and be like "hey can you give these to the graphics guys to make sure they all work with your, here's my business card, let me know if you guys want to do a marketing promo or something" pro Qwertycoatl posted:i used to work for a company making a now-defunct mobile gpu (i just did video stuff, not 3d, so don't blame me too hard please) lol
|
# ? Sep 29, 2017 22:49 |
|
Seems like a consistent theme that people are developing on relatively old graphics cards, because if it works there, it'll work on basically anything. So where do you think we go from here? Whats the next big thing that would actually make you use some of the new tech new cards supposedly have? Other than "poo poo should just work right", and "poo poo should be debug-able" what features would you wanna see in some theoretical next generation of graphics cards?
|
# ? Sep 29, 2017 22:51 |
|
Suspicious Dish posted:also please remember that gamers suck. they are extremely gullible to marketing while barely understanding what game developers actually do. I would love an idea of what to actually know about that does not require me to be a professional in the field.
|
# ? Sep 29, 2017 22:53 |
|
Volmarias posted:I would love an idea of what to actually know about that does not require me to be a professional in the field. same. all i know is, bigger numbers push more frames onto the monitor, get super expensive in the high end, and also the higher ones are basically hairdryers, thermally (1080ti/vega will happily draw 300W, though gigantic heatsinks usually make them very quiet hairdryers these days, at least). that's it. i look at benchmarks, see what's good for my monitor, go buy it. i tried stepping into the rendering on a gpu thing once and couldn't figure out poo poo by myself. rendering things onto the screen with d3d/gl is simple enough to pick up, understanding how it all works on a basic level ended up being super beyond me though and i'm not sure it can be described well without posting a novel about it, so even just pointers in the right direction would be super appreciated at this point
|
# ? Sep 29, 2017 23:23 |
|
PCjr sidecar posted:tell your server monkeys to use nvidia-smi to set compute mode to default/shared instead of exclusive (usually will make things worse when inexperienced people are actually using the cards; welcome to the social) yeah I should probably tell them that if they haven't figured it out by now
|
# ? Sep 29, 2017 23:47 |
|
here's some really good introductory material from a guy much smarter than me how gpu's work: https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/ how 3d triangles work: https://fgiesen.wordpress.com/2013/02/17/optimizing-sw-occlusion-culling-index/ and here's an article by me describing the basics of 2d rendering on a cpu: http://magcius.github.io/xplain/article/rast1.html (i'm working on a followup)
|
# ? Sep 29, 2017 23:54 |
|
.
|
# ? Sep 30, 2017 00:33 |
|
when i did graphics in uni in 2004 the lab just got its first non fixed-function gpus and i remember in my term project making some asm shader that was a bitch to make working and barely had any documentation but now it sounds like there's pretty good toolchains and a high level language and poo poo. is there a good reference for poking around and learning that stuff now? just making a toy app in visual studio or something?
|
# ? Sep 30, 2017 00:42 |
|
webgl is honestly pretty cool to get started with and it's where i do all my side project work have some more random resources: 3d basics talk i gave for a bunch of random developers at my previous linux job https://www.youtube.com/watch?v=v8jUNC5WdYE source code at https://github.com/magcius/sw3dv some random open-source things i have written: https://magcius.github.io/model-viewer/ https://github.com/magcius/model-viewer https://magcius.github.io/bmdview.js/bmdview.html https://github.com/magcius/bmdview.js https://magcius.github.io/pbrtview/src/pbrtview.html https://github.com/magcius/pbrtview
|
# ? Sep 30, 2017 01:45 |
|
ADINSX posted:Other than "poo poo should just work right", and "poo poo should be debug-able" what features would you wanna see in some theoretical next generation of graphics cards? sucks my dick and tells me I'm a good boy
|
# ? Sep 30, 2017 02:03 |
|
Comfy Fleece Sweater posted:sucks my dick and tells me I'm a good boy
|
# ? Sep 30, 2017 03:08 |
|
hey op have you used this https://developer.nvidia.com/linux-graphics-debugger and do you think its a POS?
|
# ? Sep 30, 2017 04:32 |
|
not that specific build, but i've used the tegra version of it, and another private version of it https://developer.nvidia.com/tegra-graphics-debugger it sucks.
|
# ? Sep 30, 2017 05:14 |
|
Suspicious Dish posted:since their shader compiler has to run real-time and be fast and can't do that much in terms of optimization) Why
|
# ? Sep 30, 2017 10:03 |
|
my fellow, have you heard of SPIR-V???
|
# ? Sep 30, 2017 10:51 |
|
Suspicious Dish posted:webgl is honestly pretty cool to get started with and it's where i do all my side project work webgl seems like one of those things that should be either hilarious or terrifying "hello, we're just gonna let random javascript on some random website talk directly to your graphics card without your knowledge or confirmation, this sounds like a fantastic idea with no downsides whatsoever"
|
# ? Sep 30, 2017 15:28 |
|
nah, google basically made their own libgl which compiles to direct3d called angle for safety (and driver workaround) purposes webgl doesn't just run the driver's libgl. fun fact: microsoft said that webgl would be the most stupid security thing and then people thought microsoft was being anticompetitive until people found a bunch of stupid security things Suspicious Dish fucked around with this message at 17:18 on Sep 30, 2017 |
# ? Sep 30, 2017 16:39 |
|
because users want fast loading times
|
# ? Sep 30, 2017 16:39 |
|
random side-project update android ships a software libgl called "pixelflinger": https://android.googlesource.com/platform/system/core/+/master/libpixelflinger/ i thought it died out years ago since it was really only meant as a hw bringup kind of thing, but apparently some hardware drivers still use it in a fallback path or something, because i just got a call stack on my android tablet which had pixelflinger in it
|
# ? Sep 30, 2017 17:27 |
|
Suspicious Dish posted:random side-project update i thought android tablets are a wasteland of broken code and abandoned SoCs this kinda confirms that impression
|
# ? Sep 30, 2017 18:10 |
|
wait, they still make android tablets?
|
# ? Sep 30, 2017 19:00 |
|
The Management posted:wait, they still make android tablets? they're massively more popular than the failing ipad
|
# ? Sep 30, 2017 19:48 |
|
android tablets are doing great work and they're being recognized more and more. not like the failing ipad. sad!
|
# ? Sep 30, 2017 21:35 |
|
The Management posted:wait, they still make android tablets? Literally reading this on my Galaxy Tab S2
|
# ? Sep 30, 2017 21:38 |
|
Suspicious Dish posted:random side-project update apparently it's still a thing, since Android Backstage still has talks about it in 2017. Suspicious Dish posted:hi i'm a gpu guy i work on the grpahics at video games and previously i worked on the mali gpu driver to try and make it not suck (i wasnt successful) oh man, MALI. god that pile of bad decisions never fails to piss me off. quick background for people who don't work with embedded poo poo: ARM is both an instruction set (really a range of them) and an implementation. Everybody licenses one of their cores in verilog/vhdl source form then buys a bunch of random perhepherals like upgraded memory controllers or sound codecs and mashes them together then poops the whole thing out to a fab like gloflo or samsung. this means there's a lot of very very bad ARM processors out there. MALI came about because there were approximately 17 billion competing GPU companies selling incompatible modules to ARM. remember the good old days when games only worked on some subset of phones? Qwertycoatl ran into that because their SOCs core wasn't included in a lovely game like mali, tegra or powerVR were. ARM bought falanx and started shipping MALI with their cores, to start some sort of standardization. Yay, great. Problem: GPUs are memory hungry, and ARM didn't bother with things like "standards for embedded graphics memory access" so every individual SOC has to roll their own memory management. naturally the place to do this is in the graphics library, not in the graphics driver. there's no such thing as a "MALI" graphics library, because it can't do anything at all because it has no RAM. instead, there's X-brand MALI graphics library, compiled against X-brand bioniC or libC or elibC or whatever they make their BSP against, and you can never upgrade your software unless the SOC vendor deigns to support a design that's not their current one. to compound this, nearly every lovely SOC has at least one autist on staff who thinks they know all about GPUs because they have a liquid cooled AMD Titan they use for playing shootmans and makes "improvements" to the HDL or driver layer (they are never improvements) people keep trying to make an open-sores version (LIMA) but the completely fractured nature of the mali landscape and developer-hostile attitude of everyone involved make it super slow going. OP which mali project were you working on?
|
# ? Sep 30, 2017 22:05 |
|
Harik posted:apparently it's still a thing, since Android Backstage still has talks about it in 2017. yeah, though ARM has apparently been trying to corner the market by making the other peripherals too. and all the low-end soc shops just use arm's since it's cheaper than maintaining their own. so now arm sells a memory controller, ethernet controller, gpu, display controller... Harik posted:MALI came about because there were approximately 17 billion competing GPU companies selling incompatible modules to ARM. remember the good old days when games only worked on some subset of phones? lol, they never left, buddy. the latest disaster was samsung patching the mali driver to break it for literally everybody in the galaxy s8. Harik posted:ARM bought falanx and started shipping MALI with their cores, to start some sort of standardization. Yay, great. Problem: GPUs are memory hungry, and ARM didn't bother with things like "standards for embedded graphics memory access" so every individual SOC has to roll their own memory management. nah, mali standardized on UMP a while back, which is a kernel driver that hands out carve-out chunks to the gpu. it's bad, but at least it's standard now. Harik posted:to compound this, nearly every lovely SOC has at least one autist on staff who thinks they know all about GPUs because they have a liquid cooled AMD Titan they use for playing shootmans and makes "improvements" to the HDL or driver layer (they are never improvements) the company i was at before paid something to the tune of $200,000 to arm for the source code for their mali 450 utgard driver and my job was to literally just fix bugs and get it to work on the embedded deivce we were shipping. also the main developer of lima literally put out a blog post to insult me, lol.
|
# ? Sep 30, 2017 22:12 |
|
Suspicious Dish posted:lol, they never left, buddy. the latest disaster was samsung patching the mali driver to break it for literally everybody in the galaxy s8. Suspicious Dish posted:nah, mali standardized on UMP a while back, which is a kernel driver that hands out carve-out chunks to the gpu. it's bad, but at least it's standard now. Suspicious Dish posted:the company i was at before paid something to the tune of $200,000 to arm for the source code for their mali 450 utgard driver and my job was to literally just fix bugs and get it to work on the embedded deivce we were shipping. i guess I should find the best -400 MP4 implementation out there and replace this SOCs garbage kernel driver with theirs and use their libraries. Already had to do it once to get sound working. how garbage is this soc? it has my all-time favorite kernel commit message: quote:In A.D. 1582 Pope Gregory XIII found that the existing Julian calendar insufficiently represented reality, and changed the rules about calculating leap years to account for this. Similarly, in A.D. 2013 Rockchip hardware engineers found that the new Gregorian calendar still contained flaws, and that the month of November should be counted up to 31 days instead. Unfortunately it takes a long time for calendar changes to gain widespread adoption, and just like more than 300 years went by before the last Protestant nation implemented Greg's proposal, we will have to wait a while until all religions and operating system kernels acknowledge the inherent advantages of the Rockchip system. Until then we need to translate dates read from (and written to) Rockchip hardware back to the Gregorian format.
|
# ? Sep 30, 2017 22:46 |
|
Harik posted:i guess I should find the best -400 MP4 implementation out there and replace this SOCs garbage kernel driver with theirs and use their libraries. Already had to do it once to get sound working. how garbage is this soc? it has my all-time favorite kernel commit message:] some nerd posted:Well, perhaps I'm having a sense of humour failure, but IMO in a setting which is supposed to be for information, jokes should not be present. People reading patch notes, release notes, and other informational material should be able to assume that everything written there is 100% sincere.
|
# ? Sep 30, 2017 23:02 |
|
|
# ? May 4, 2024 17:05 |
|
jesus loving christ also, thank you for posting the articles on gpus, op, much appreciated
|
# ? Sep 30, 2017 23:20 |