[HN Gopher] Nvidia announces native GPU programming in Rust
___________________________________________________________________
Nvidia announces native GPU programming in Rust
Author : nonmaskable
Score : 908 points
Date : 2026-09-16 11:15 UTC (1 days ago)
HTML web link (developer.nvidia.com)
TEXT w3m dump (developer.nvidia.com)
| the__alchemist wrote:
| I'm looking forward to trying these when they stabilize! I
| currently use WGPU for graphics, and cudarc for CUDA.
|
| Note: Cuda-oxide is similar to Cudarc's host component, but uses
| a rust-style kernel dialect. Advantage: Share structs between
| host and device. Disadvantage: Trading standard Cuda kernels for
| a new, WIP dialect.
|
| I haven't tried the tile API yet; looking forward to it.
|
| The last time I checked, Cuda Oxide was Linux only, and required
| Async; these are why I haven't tried it yet.
| embedding-shape wrote:
| cudarc been great for me, because it's easy to look up existing
| examples and references, and it maps 1-to-1 with what I see.
| I'm already having a tough time with CUDA itself, a dialect of
| it makes a tad harder to rely on previous work.
|
| Seems more ergonomic in general though, both approaches they
| share, compared to cudarc, and less build infrastructure and
| fiddling with environments, which is great.
| melihelibol wrote:
| It's still linux-only but doesn't require async. You should be
| able to execute and compose kernels synchronously.
| dllu wrote:
| Since NVIDIA owns huggingface now and huggingface has the
| excellent Candle [1] crate for inference on Rust, this seems like
| a good step towards nice native Rust kernels.
|
| [1] https://github.com/huggingface/candle
| jacobgorm wrote:
| Nobody cares if kernels are written in Rust. Kernels were meant
| to be written in C, but if you want to go more high-level try
| Triton or a similar DSL that nicely abstract tile sizes etc.
| cpill wrote:
| oh no no no, this is going to break the CPP hold on AI and
| game dev.
| pjmlp wrote:
| Nah, Rust compiler still needs C++ to be built in first
| place, and everyone on AI uses LLVM as infrastructure.
| keithnz wrote:
| kernels aren't meant to be written by any defined language. C
| is just a traditionally good default language that took over
| from assembly. No particular reason we have to stick with C.
| chadcmulligan wrote:
| And quite a few reasons that something better than C should
| be used. Rust seems a good candidate.
| jacobgorm wrote:
| What reasons would you have to prefer Rust over C for
| compute kernels? I am a great fan of Rust, but I don't
| see any benefit for kernels, due to their relatively
| simple nature.
| pjmlp wrote:
| That is exactly why OpenCL failed adoption, focusing on C,
| instead of being polyglot like CUDA.
| zozbot234 wrote:
| SYCL is the natively polyglot counterpart, with practical
| implementations of it compiling down to the same sort of
| SPIR-V kernels as OpenCL. (OTOH, much of the current
| adoption on the open standards side seems to target the
| more widely supported SPIR-V compute shaders, via Vulkan
| compute.)
| pjmlp wrote:
| Not really, first of all it is for C++, not the range of
| languages supported by CUDA.
|
| Before SPIR was a thing in OpenCL, Khronos could not
| understand why anyone would care about anything else
| other than C99, or why supporting Fortran on GPUs was at
| all relevant.
|
| Secondly, from the competition only Intel cares about
| SYCL with their own sugar on top, OpenAPI.
|
| AMD hasn't cared one second about it.
|
| You may mention Codeplay, which is anyway an Intel owned
| company since 2022.
|
| As for Vulkan, it doesn't have neither the features, nor
| the tooling that CUDA enjoys, it is the usual putting up
| with using LEGOs from different brands, with various pin
| sizes, that is so common with Khronos.
| Anoian wrote:
| I have never seen a comment this gray
| jacobgorm wrote:
| I haven't felt this popular since then 1990s when I was
| opposing Visual J++ and IIS.
| derpyzza wrote:
| in all of hackernews' shitty UX decisions, gray unreadable
| comments is one of the worst ones
| instagraham wrote:
| noob here - what's the benefit of this? Will using Rust lead to
| more optimal LLMs or code or both?
| jvanderbot wrote:
| I view it more of supporting an expanding use case. If rust
| gets popular then you'll want to support it.
| the__alchemist wrote:
| I will give you an outsider's perspective on an analogy in this
| case. It is easy to see Candle as a ML crate to use for neural
| networks in rust. I have used it, and it works well.
|
| The analogy is Tensorflow 5-10 years ago. It is popular, and
| there are lots of material on it. You quickly learn from
| talking to people that due to whims, a collection of reasons,
| people's love of consensus that no one is recommending it; new
| people are not learning it. In this case, the Torch analogy is
| the Burn lib.
| laggui wrote:
| And to tie this back into GPU programming, Burn's backends
| use CubeCL, which lets you write compute kernels in a Rust
| DSL using #[cube], with a JIT compiler and autotuning
| machinery. It targets CUDA, AMD, Metal, Vulkan and WebGPU.
|
| (disclosure: I am a contributor)
| LtdJorge wrote:
| It's very cool. If Rust had comptime, apart from macros, it
| would be unmatched in capabilities.
| melihelibol wrote:
| Integration with candle is already available!
| https://github.com/huggingface/candle/pull/3934/
| claiir wrote:
| > The launch is checked rather than trusted.
|
| Damn even Nvidia is putting out fully Claude-written articles.
| manyatoms wrote:
| not to worry, they have an 'AI generated summary' box too
| greenavocado wrote:
| Its a recursive summarization pyramid
| pizzafeelsright wrote:
| This thread flags an honest assessment of AI signal
| detection.
| smallmancontrov wrote:
| It gets fun when someone uses an uncensored model to bypass
| a refusal, but they accidentally pick one that was trained
| for erotic writing and brings its particular talent to the
| documentation task.
| mahboi wrote:
| Thanks, saved me a few minutes
| bayindirh wrote:
| That's actually a magnificent observation. This is not only an
| indication of a keen eye, but a trained brilliant mind as well.
| hitekker wrote:
| You're absolutely right!
| jubilanti wrote:
| One might even say it is load-bearing on the seam!
| lioeters wrote:
| Why this is important: it's the honest take.
| pbkompasz wrote:
| I hate this
| bayindirh wrote:
| Genuinely, why?
| efilife wrote:
| this is literally a reddit comment chain
| bayindirh wrote:
| We do this wicked sin called having fun once in a blue moon
| here.
|
| Slashdot's spirit shall live somewhere, no? Rent is all-
| time high and it can only afford here, for now.
| keybrd-intrrpt wrote:
| > even Nvidia
|
| Why "even Nvidia"?
|
| They are fully behind using AI for basically everything.
|
| What's next? "Damn, even McDonald's is putting out unhealthy
| food"
| jchw wrote:
| Sure, but _even Anthropic_ doesn 't appear to use Claude for
| blog posts. (I don't think anyone should. The prose stinks.)
| keybrd-intrrpt wrote:
| Anthropic _absolutely_ does
|
| They are just better at hiding it or configuring Claude.
|
| I have several skills that reformat text to remove AI-speak
| tells.
| jchw wrote:
| Prove it.
| WD-42 wrote:
| https://news.ycombinator.com/item?id=49249269
|
| I put the "humanized" output through Pangram and it still
| comes out as 100% AI generated.
| breezybottom wrote:
| That's about as useful as saying you asked the magical
| sky fairy.
| jchw wrote:
| I think you can't trust Pangram in a high stakes
| situation, but it is absolutely better than random noise
| at detecting AI-generated text. Which isn't surprising.
| If the distribution of probabilities can yield blatant
| Claudisms, it's not surprising it would also have more
| subtle deviations.
|
| (Addendum: As I recall, LLM-generated outputs roughly
| follow Zipf's law, but the distribution still tends to
| have some subtle distinctions vs human text; pretty
| interesting, but I don't know where I heard this, so
| nothing to cite. Sorry.)
| meowface wrote:
| Pangram has an extremely low false positive rate. Even on
| adversarial examples.
|
| One trade-off is even some obviously LLM text won't get
| detected by them, but they work really hard to ensure
| false positives are rare since a false accusation is much
| worse for society than someone getting away with LLM
| meatpuppetry.
| jchw wrote:
| To be honest with you, I don't think I would be able to
| identify with high certainty that the bottom text is AI
| generated, so it definitely goes a long way to obscure
| the AI-generated nature of it, but I also think it still
| feels unnatural somehow. I realize my framing naturally
| calls into question whether I'm being honest, but I am
| being honest. Given my experience with similar "skills"
| (it's just chunks of prompt, nothing magical after all) I
| expected even less.
|
| But still, this is all very strange because it wasn't
| _that_ many generations of AI models ago that AI writing
| was a lot better - I 'm talking GPT 4.1, Claude 4.5, that
| sort of era.
|
| Anthropic newsroom posts on the other hand are carefully
| constructed and well-written in a way that I have not
| seen demonstrated by LLMs yet, past or present. I expect
| that they have well-paid staff who are careful with every
| detail of their public communications. When you put it
| that way, it almost feels unfathomable that they _wouldn
| 't_, doesn't it?
| sebmellen wrote:
| GPT 4.5 was really good.
| saghm wrote:
| I don't feel like either one of you really has a strong
| claim. "Doesn't appear to" is subjective, and of course
| it's impossible to prove one way or another.
| jchw wrote:
| You're simplifying the exchange a little too much. I
| said:
|
| > Anthropic doesn't appear to use Claude for blog posts
|
| My claim is _literally_ the lack of evidence, which, yes,
| can 't prove anything. This claim can be contested easily
| by showing evidence that they in fact, do appear to be
| using Claude to write prose in blog posts.
|
| They said:
|
| > Anthropic _absolutely_ does
|
| Sounds pretty certain Anthropic is in fact, using Claude
| to write blog posts. Enough to emphasize "absolutely".
| That doesn't read like "I'm going off of vibes", that
| reads like "I can prove it". So, fine. Prove it. I don't
| believe it, and I want to hear the proof.
|
| I'm skeptical, but it wouldn't be my first time being
| wrong. But flatly, if you make claims with this kind of
| certainty, yes I want to hear your proof.
|
| My point in saying "Even Anthropic doesn't appear to be
| using Claude for blog posts" was not meant to be some
| striking revelation, I literally was considering it a
| prior to make another point. This on the other hand sure
| does sound like a striking revelation to me, that a lot
| of people across the Internet would be curious to hear.
| Like I'm sure these people would be interested:
|
| https://www.reddit.com/r/ClaudeAI/comments/1wdfd92/are_an
| thr...
|
| I will admit that I am unnecessarily aggressive
| sometimes, but I wouldn't have changed my response much
| in any case. If you're going to make a strong claim like
| this, I want your evidence, not your vibes. Otherwise,
| the claim should be a lot weaker.
|
| I also realize that this sort of brashness upsets HN a
| bit, but it is what it is. I pandered comments for votes
| in my 20s a bit, time to grow up, sometimes people won't
| like you. Sometimes I feel something deserves a brash
| response.
| saghm wrote:
| I don't really have any opinion on your tone; I just
| still don't agree with your framing. A lack of evidence
| would be neutral like "there's no evidence to indicate
| either possibility is more likely", but your phrasing
| conveyed that one possibility was more likely than the
| other. I pushed back against your follow-up because it
| seemed like you were arguing for a higher threshold of
| evidence than you provided.
| jchw wrote:
| Well, to be fair, you're correct. I _am_ asking for a
| higher threshold of evidence. It 's a stronger claim. I
| feel a stronger claim deserves stronger evidence.
| saghm wrote:
| I guess that's where we disagree. I feel like either
| claim is equally hard to falsify from the outside
| (partially because I've never had much confidence in my
| ability to spot whether text is from an LLM outside of
| the most glaringly obvious cases, and likewise don't have
| any clue whether people who have high confidence are
| accurate or deluding themselves).
| rkharsan64 wrote:
| According to
| https://news.ycombinator.com/item?id=49417480, Anthropic
| hires writers who do not use LLMs, and reading their
| updates I also feel that they don't use LLMs for
| communication.
| manquer wrote:
| I think implication being organizations with 40,000+
| employees and even more consultants and contractors plus a
| lot of budget are also using LLMs to draft public facing
| content instead of paying for content writers or even just
| proof readers .
|
| It points to friction rather than cost economics. Same reason
| we are always surprised why multi billion dollar product
| companies with millions of install base prefer electron
| instead of a native app.
| freeopinion wrote:
| This does not imply that the organization is not paying for
| content writers or proof readers. It does suggest that they
| are not getting the value of paying for content writers or
| proof readers.
| simpaticoder wrote:
| It does suggest that they are not _accurately measuring_
| the value of paying for content writers or proof readers.
|
| People and companies are hungry for knowledge about
| people's reactions, but the modern internet DOES NOT give
| an accurate image of people's views.
| latentsea wrote:
| No. It suggests they don't mind littering slop into the
| information environment.
| pjmlp wrote:
| Of course, that is the whole point of using AI to replace
| workers.
|
| Only devs think it isn't coming for them, it is empowering
| and nothing else will happen, no team reductions, nah how
| come.
| dannyw wrote:
| I believe most of their marketing videos use fairly
| convincing text to speech too, not voice actors.
| dprkh wrote:
| McDonald's food is not even that unhealthy. I just tried a
| Burger King burger the other day and it's terrible. I think
| it's like 2000 calories in a single burger or something.
| calvinmorrison wrote:
| found the McShill. The King will hear of this!
| timacles wrote:
| > I think it's like 2000 calories in a single burger
|
| that would be pretty cool, you can just get your entire
| day's calories from one burger
| dprkh wrote:
| I couldn't even finish it man, it was so fucking sloppy.
| I had to throw away like 40% of it.
| xxs wrote:
| 2k cal would be around 250ml of oil. or 350grams of
| peanuts. So doing with bread, meat, and other stuff alike
| requires over 600g of food, an excellent value to energy.
| saghm wrote:
| Their CEO also has the dubious distinction of claiming we've
| reached AGI more then once: https://www.theverge.com/ai-
| artificial-intelligence/985597/j...
| RickHull wrote:
| Is Jensen Huang still all-in on OpenClaw? That moment feels
| more like a flash in the pan.
| daemonologist wrote:
| I get the impression that Nvidia employees don't care too much
| - I started seeing fully AI-written "documentation" on some of
| their smaller projects more than a year ago (i.e., before it
| was even slightly a good idea).
| DonsDiscountGas wrote:
| People never really read documentation before. Agents do read
| it now, and they seem to understand LLM-written text just
| fine.
| WD-42 wrote:
| > People never really read documentation before.
|
| The heck you talking about? How do you think we wrote
| software for the last 50 years?
| Barrin92 wrote:
| when you start to internalize that these kinds of
| statements are an indication of how the average developer
| of the last 10-15 years operated the adoption rate of AI
| makes a lot more sense
| WD-42 wrote:
| This is extremely depressing, I think I'm coming around
| to the realization that you may be right and I've been
| naive my entire career.
| californical wrote:
| Yeah lol it's basically the only reliable way to know how
| things work. Pre-AI, I read documentation for libraries
| that I used almost every day.
|
| And now with AI I'm using it to fact check Claude. And
| still reading it for myself to understand why other
| peoples code is written a certain way. It's basically the
| most important thing to reference when coding.
|
| Sure today Claude can just read the library code and tell
| you what a function does or how to do something. But it
| still won't tell you why something is a certain way or
| won't figure out specifically-designed usage patterns as
| reliably as the author telling you "this is an example of
| doing x"
| stevemk14ebr wrote:
| only reliable way to know how things work is to reverse
| engineer them
| californical wrote:
| But that's my point, it'll tell you how things work. In
| libraries I'm using, you can just read the code yourself.
|
| You need the documentation to know why certain things
| work a particular way, or to know why some relationships
| or methods are the way they are
| phatskat wrote:
| I really appreciated a friend reaching out to me with
| some PHP questions today. It was, to me, fairly basic but
| he was having a hard time grokking the documentation vs
| reading what his coworker wrote (some code using output
| buffering).
|
| I brushed up on the docs since I haven't touched it in a
| couple years, explained my understanding of the ob_*
| functions, and gave him a very brief demo on a PHP
| playground.
|
| He could have asked any LLM to tell him what that chunk
| of code did, and to explain the three functions, and
| instead he reached out to me. That felt _good_. Talking
| shop has always been a good way for me to form
| connections, because the pressure to socialize becomes
| task-oriented and you start to learn about how people
| think and feel, and that opens up easier paths for actual
| connection. It was nice.
|
| Just like the Old Internet still exists - niche websites,
| mailing lists, probably a BBS or two (likely more
| right?), the pre-LLM world will trudge on, for a time. I
| hope LLMs actually lead to good things for people in the
| long run, and for now I personally will remain sparse in
| my usage of them.
| WD-42 wrote:
| Where do you work? Sounds nice!
| groundzeros2015 wrote:
| A small percentage of engineers
| bee_rider wrote:
| Copy past the example code, then tweak until it breaks?
| If we were meant to read documentation, not reading it
| would cause a compiler error!
| Vegenoid wrote:
| My absolute greatest skill in my career, that has
| consistently set me apart from my peers, is that I read
| documentation thoroughly.
|
| It is shocking how much of a differentiator this is. You
| will discover that the software you're already using is
| much more capable than you realized.
| jtfrench wrote:
| The good news is your attention to actually reading and
| understanding documentation will differentiate you more
| and more as others (short-sighted, IMO) outsource
| understanding to an LLM.
| dannyw wrote:
| What? People never read documentation?
|
| I start with reading and exploring documentation first;
| with the codebase as a secondary tab.
|
| When it's not LLM generated, documentation is supposed to
| be easier to read and more insightful than code.
| latentsea wrote:
| >People never really read documentation before.
|
| Speak for yourself. I read it.
| api wrote:
| Is that your honest load bearing assessment you're going to
| flag?
| written-beyond wrote:
| I hadn't read the article and read this comment as though
| NVIDIA themselves were implying that this library was checked
| but not trusted by them since it was fully LLM generated.
| karim79 wrote:
| What are we for, I ask? What the hell are we now. Chatters to
| LLMs now? Is this our future? It really is starting to feel
| like it now.
| arcanemachiner wrote:
| Dude I am in slop fucking hell right now. There is still room
| for a human touch, without which the agents will lever us
| harder and faster into a world of incomprehensible garbage.
| karim79 wrote:
| I totally concur. I'm almost lost for words at this stage.
| I need me some land to grow vegetables on and that's about
| it. Maybe some chickens. Every single day brings more
| despair (and not the prosperity we were promised).
| freeopinion wrote:
| Good luck with that. You will have to pry the water from
| the AI datacenters.
| sejje wrote:
| Do you know that's not really a thing or are you just
| wanting to help spread the propaganda?
| Zambyte wrote:
| ... doesn't one of those imply the other?
| sejje wrote:
| I have land and chickens, and I'm really excited about
| the future & AI.
| karim79 wrote:
| I'm also an optimist but the crash is imminent. I hope I
| am wrong.
| jtfrench wrote:
| Land, chickens, and private local AI running sustainably
| on the farm sounds like the least dystopian version of
| this AI future!
| freeopinion wrote:
| Do you have the stomach to walk into a high school in the USA
| these days? Teachers use AI to generate assignments. Students
| feed the assignments to AI and submit the responses. Teachers
| feed the student submissions to an AI for grading.
| karim79 wrote:
| Please tell me this is not true.
| Orochikaku wrote:
| This is true even at the undergraduate level
| unfortunately...
| karim79 wrote:
| Then here we are. AI apocalypse. Something of note. I've
| started to pay more attention to canned goods. Soups with
| lentils and so forth.
| oblio wrote:
| FYI, the world is a lot more decentralized than we think
| and even during the Dark Ages, guess what, that was
| happening in Europe and many places in the world were
| booming scientifically, technologically, etc.
| wartywhoa23 wrote:
| Dark Ages weren't as interconnected by communications and
| wrapped by the tentacles of transnational corpocracy as
| modern world, though...
| oblio wrote:
| Meh. It's not like we forgot how to make copper wires for
| landlines. We'll be fine. We'll live more or less like in
| 1880 or 1920, it's not a horrible life. I do hope we get
| to keep antibiotics, though.
| meowface wrote:
| It's true of most work in many and soon most white collar
| jobs, too. Claude writes some dense useless thing,
| everyone else uses Claude to summarize and write a reply
| to the thing. The Claude-submitted PRs get automatically
| reviewed and commented on by a GitHub Claude review bot.
| The programmer asks Claude to check out Claude's review
| comments to Claude. Claude pushes a commit to the branch
| and writes a comment. The Claude review bot reviews the
| commit and leaves a comment. The human [...].
|
| My hot take is that it's not really that terrible in the
| long run for work since I think LLMs will probably be
| nearly or actually AGI and better white collar workers
| than most humans within 5 years of today. But it is very
| funny and surreal in the meantime.
|
| It is definitely bad for school, though. Kids IMO should
| actually be encouraged to use LLMs but not in or for
| class work outside of an AI best practices class.
| Probably stop giving them homework (90% will always try
| to find a way to make AI do it) and have them solve
| problems in class hours with no electronics so that
| they're forced to not defer learning. This will become
| even more important once we have AGI.
| oblio wrote:
| > LLMs will probably be nearly or actually AGI
|
| What if they don't?
|
| > This will become even more important once we have AGI.
|
| What if we achieve AGI in 50+ years? Should everyone live
| in this Kafkaesque world until then?
| sul_tasto wrote:
| I have two kids in engineering programs at a state
| University. They are allowed to use AI for homework
| assignments, but the homework is no longer worth any
| credit. They have a lot more papers, quizzes, and tests
| in class that count for their entire grade.
| upboundspiral wrote:
| I know many teachers who actually have respect for the
| profession, themselves, and the students. Thankfully that
| means they don't do this.
|
| Whether this is a widespread macro trend is another issue,
| and would be terryfying.
|
| If true, however, it would reflect on the values of the
| organization: we have spent decades underpaying teachers,
| and doing a poor job of pretecting schools from frivoluos
| lawsuits. Add into that, districts have thrown money into
| new buildings, have been suckered by Big Tech to adopt
| their policies (common core was pushed by Big Tech and has
| been a distaster as well as computers in classrooms). As a
| nation (the USA) we can't get our act together for a
| rigorous national exam, etc etc.
| freeopinion wrote:
| About half of the states in the USA require the ACT or
| SAT for high school graduation.
|
| Alabama is one state that requires the ACT. The mean
| score in Alabama is below 18/36. Wisconsin is another.
| Its students score on average about 1 point higher than
| the national average of 19.4/36.
|
| If you prefer states that require the SAT, the mean SAT
| score of students from Delaware is less than 980/1600,
| about 50 points below the national average.
|
| I'll leave it to others to argue about whether these
| exams are rigorous.
| iamarobot wrote:
| As a high schooler going to a school with stricter rules on
| AI than most in my area, I can say that it's been going
| downhill ever since GPT 4. Teachers constantly use AI to
| create assignments(my French Teacher regularly handed us
| work with GPT 5.1 prose and emojis). Students are also
| rampantly using AI and bypassing school restrictions(We
| have a google account, making it easy to use Gemini if we
| just sign out), causing an inflation in GPAs and test
| scores. There's no easy solution to the problem, banning
| AI-tools only help somewhat as even typing into Google has
| AI web results, and students are quickly overcoming ways to
| restrict them. I have a friend that vibe coded an
| application that allowed his Mac Mini's desktop to be
| mirrored on his school chromebook, bypassing every
| restriction with sub 1-second latency. Of course, that
| opens the can of worms to whether schools should allow
| students to use AI...
| oblio wrote:
| > Of course, that opens the can of worms to whether
| schools should allow students to use AI...
|
| We are starting to see results indicating cognitive
| decline due to AI in education, so no, we should do
| everything possible to ban it except for very limited
| fields.
|
| LLMs aren't calculators or even computers, their
| generated output is too flexible, generic and basically
| starts replacing thinking.
|
| Most likely they should only be allowed during late
| highschool years or just at university level, when people
| at least have a chance to learn how to research on their
| own.
| asimovDev wrote:
| Remembering my teachers 20 years ago talking about staying
| in school grading until 8-9 PM, I wonder if these things
| are a symptom instead of a disease
| karim79 wrote:
| I find it interesting that this was downvoted twice without
| explanation.
| fwlr wrote:
| Claude, rewrite my graphics card in Rust. Make no mistakes.
| pyrophane wrote:
| Yeah. I think if the text is written for other machines, then
| by all means have an LLM generate it, but if it is intended for
| a human audience, have a human being write it.
|
| We are still much better at writing in a way that doesn't waste
| other people's time.
| jorl17 wrote:
| It is the number 1 thing I cannot stand with Claude slop. It's
| a sort of anthropomorphization of language. Every "thing" does,
| produces, feels, wants, asks, answers, etc....
|
| - "Launch is checked"
|
| - "Question is asked"
|
| - "The implementation answers"
|
| - "The model wants"
|
| - "The results name"
|
| - "The connection surfaces"
|
| - "The prompt wires"
|
| - "The feature rides the mechanism"
|
| Every single fucking thing is alive, wants things, and does
| things.
|
| It's terrible. Infuriating. I want to rip my eyeballs out
| reading this filth. All. The. Time. "The anger is real".
| karim79 wrote:
| Create any page with a file uploader. They all look the same
| now. It's like the Twitter Bootstrap days of responsive
| design. You'll get an icon which looks like ones on (on the
| drop space) those sites which are like "you must wait 60
| seconds for this file to download".
|
| It's so horrible. The human element has been completely
| removed and replaced by..... mediocre.
| onion2k wrote:
| _The human element has been completely removed and replaced
| by..... mediocre._
|
| No it hasn't. The human element is still there, prompting
| the LLM. The change is that the human is happily accepting
| the first thing they get rather than critically looking at
| it and seeing a problem.
| oblio wrote:
| The real problem is that the human is only seeing dollar
| signs.
| onion2k wrote:
| I don't think it's that because I see a lot of this in
| businesses where the human isn't paying the bill, or is
| even aware of what the bill is.
|
| Humans are seeing either a shortcut to go faster
| (accepting low quality to move on immediately; reasonable
| if they're short on time) or a shortcut to lowering
| effort (accepting low quality because they don't care;
| not so reasonable but probably has a deeper root cause).
| xxs wrote:
| All of the examples read like: "The dude abides", except in a
| grotesque/parody way.
| latentsea wrote:
| Even their writing skills are getting rusty.
| saadn92 wrote:
| it seems like that's the way the industry is headed
| pjmlp wrote:
| Another of those AI is bad for articles, great for coding.
|
| Plenty of us share the same opinion on doing reviews of AI
| generated code.
| rvz wrote:
| First of all, this is a pre-1.0 release that requires a nightly
| Rust compiler (if you choose the SIMT track with cuda-oxide) so
| that one is going to be unstable software.
|
| Secondly, When an issue occurs with a kernel or you want to write
| your own custom kernel in Rust, now we need to diagnose if the
| problem came from either cuda-oxide (SIMT), Rust's side, CUDA or
| Tile (If you decide to choose the Tile track).
|
| Another dependency into the list and course everything is open
| source except CUDA itself. So any issue that happens on the CUDA
| level, you are forced to wait for them to fix it.
| LarsDu88 wrote:
| In this age of LLM written everything which has softly killed my
| motivation for learning Rust somewhat, this has revived my
| interest if not only for the fact the LLMs haven't yet been
| trained on this yet!
| impulser_ wrote:
| LLM don't need to be trained in a library to use it well. It's
| just Rust which they know well.
| w4yai wrote:
| And what prevent you exactly ?
|
| There were humans far superior than you for writting Rust
| before LLM, now there's a LLM. The only difference is price and
| time execution.
|
| You get an awesome teacher (LLM) ready to answer all your
| questions about Rust.
|
| And you still find excuses not to learn it ?
|
| At some point, just realize you've been lazy to learn it and
| LLMs are just an excuse.
| afavour wrote:
| I think OP's point is that the payoff in learning a new
| language has diminished in this AI era. You can call that
| lazy, I'd consider it smart to consider whether you could be
| doing other, better, things with your time.
| w4yai wrote:
| If the sole motivation for learning things are payoff, then
| sure.
| frogperson wrote:
| the sole motivation is feeding and sheltering my family.
| in the time BC (before Clankers), rust was a better way
| to do that.
| wartywhoa23 wrote:
| > in the time BC (before Clankers)
|
| Nice one!
|
| Which year shall we count as 1 AD (Anno Delirii (or
| should it be Darii))?
| cmrdporcupine wrote:
| Sad to break it to you, but...
|
| I had LLMs write a pile of cuda-rust code and they were quite
| competent at it. Ported a bunch of (C++) CUDA kernels over, and
| ground away on them til they got equivalent performance
|
| https://github.com/rdaum/eider/tree/main/backends/cuda-oxide
|
| And mostly just DeepSeek 4.1 Flash, too. Not even a frontier
| model.
|
| Sorry.
| LarsDu88 wrote:
| C'est la vie
| brainless wrote:
| I was learning Rust slowly when the LLM enabled coding became
| good enough. I switched from learning to full on building with
| Rust. I still learn high level concepts as needed but I will
| not be able to write Rust on my own at all.
|
| And that sounds scary but the way I got over the fear is by
| realizing there are many things that I do very well but I do
| not know their internals very well. Driving is an example. I
| barely understand what the steering wheel, clutch or brake
| pedals do. I have driven over 130,000 Kms and I will perhaps
| drive more than double that in the next many years.
|
| I have been building software since PHP/Drupal days. Got into
| AWS S3 as a beta user. Adopted Memcached (and MQ) in 2008 out
| of necessity. Then Python/Django for 10 years. Then Rust. And
| tons of JS/TS. I owe a lot to my curiosity. I believe we can
| keep learning what we need and still delegate most of
| programming to agents.
| QuaternionsBhop wrote:
| There are two types of programmers: the pragmatists who see
| programming as a chore and would gladly never write a line of
| code again given the right tools, and the gardeners who don't
| want their enjoyable and rewarding garden-tending work taken
| away from them.
| applfanboysbgon wrote:
| The "pragmatists" who get excited developing a prototype
| for a week before they realize they will never be able to
| ship something anyone else will use because each trivial
| change becomes exponentially more difficult for the LLM to
| implement and completely impossible for the "pragmatist" to
| reason about, with every new commit liable to break
| something else.
|
| Still waiting for this revolution of amazing 10x software!
| It's been 10 months since Everything Changed in November,
| surely the 10x pragmatists could have leveraged their
| effective 8 years of development time? Or maybe we'll move
| the goalposts again and say that actually, Everything
| Changed with Astra, we'll just need to wait another three
| months?
| wartywhoa23 wrote:
| > pragmatists
|
| Which is a collective term for transactionalists, short-
| termists and profit-seekers of all kinds in this case.
| suresk wrote:
| I've found sorta the opposite - in any area, it can just do
| everything for you, or it can be an incredible teacher. I've
| been re-learning a lot of higher-level math and it has been an
| knowledgeable, infinitely patient, always-available tutor. Of
| course, I could just have it do just about any math I want for
| me, but that's not the point.
|
| Kinda the same with language/technology stuff - it can be a
| great tutor and it can scaffold other parts of a project for
| you. It can give you feedback and let you focus on the
| interesting parts.
|
| I guess the motivation itself may be hard because of the fear
| of it taking over much of our jobs, but having this kind of
| help/feedback is pretty cool for the sake of learning things
| just because they are interesting!
| tete wrote:
| > I've found sorta the opposite - in any area, it can just do
| everything for you, or it can be an incredible teacher.
|
| Please don't. I've had all of Codex, Claude and Gemini
| convincingly tell me absolutely wrong stuff, pointing it out
| with easily verifiable example they come up with more and
| more weird reasons.
|
| Things don't become correct simply because most sources are
| again - easily and logically verifiable - wrong. This already
| was a plague when people "just googled" stuff and effectively
| returned with the most SEO optimized answer. Now we have very
| convincingly written instances all over the place.
|
| If these were singular instances I wouldn't be so worried,
| but if you are learning it already is very easy to learn
| something wrong. This is why back in the days when people
| still used physical books to learn new things it was a good
| idea to check first which books are actually recommended.
| There have been a lot of "experts" that wrote things they
| clearly misunderstood but worked for all the examples in
| their books.
|
| To give a common example for both the backend and frontend
| devs, that isn't about a specific projects. LLMs and Google
| searches frequently turn out wrong results regarding CORS
| caching and how it works in relation to domains/hostnames.
| The circumstances under which Content-Disposition work are
| another example. I think a lot of wrong statements that LLMs
| are "convinced" about are due to wrong statements (sometimes
| in otherwise correct response) of popular Stack Overflow
| answers.
|
| It's saddening how much wrong "common knowledge" exists in
| the industry. I have been bitten by a lot of these, but it
| feels when people don't even actually code and think anymore
| this will just rise forever.
| suresk wrote:
| > Please don't.
|
| I will.
|
| Can these be wrong? Certainly. So can humans. Many of your
| examples are of humans being wrong. That doesn't make LLMs
| - or humans - useless. The fact that they are not
| infallible is not a reason to avoid using them and I'm not
| going to throw out a tool that has been incredibly valuable
| to me because someone on the internet got some bad CORS
| advice.
| tete wrote:
| There is another option. Going to the source of
| information (eg. the official project site or code),
| trying stuff yourself.
| suresk wrote:
| Learning is about so much more than accessing
| information, though. It is about building mental models,
| resolving ambiguity, exploring things that the source
| doesn't explain very well, and so much more.
|
| Questions like "What do these lines of code do?" or "How
| does this fit into the big picture?" or "Wait, this
| doesn't make sense?" are rarely answered by the source.
|
| This is a bit fresher in my mind in the math domain, but
| I don't think it is any different in any number of other
| domains, including coding. I've been working through a
| math textbook, gotten confused about how the author gets
| from step 2 to step 3, taken a picture of the text, and
| had AI explain it to me - it almost always gives me a
| much better understanding of what is going on and helps
| make things so much clearer. There is a level of
| interactivity that can't exist in a book or other
| "source" of information.
|
| I think there is a bit of tension when it comes to
| learning and sometimes the struggle itself is
| informative, but there is a reason people hire tutors and
| go to classes taught by teachers vs just reading a
| textbook, and cutting yourself off from a tool because
| you've seen it be wrong about something seems like a
| silly mistake.
| nicebyte wrote:
| what this article tells me is that no one at Nvidia actually
| cares about this project whatsoever. otherwise, they would have
| had a person actually write the announcement.
| jacobgorm wrote:
| I strongly dislike CUDA. Once you have allowed that proprietary
| cr*p into your C++ codebase, it is very hard to get rid, and you
| end up with code that is either tied to a single vendor or an
| #ifdef hell, probably both.
|
| The best way to program GPUs is face up to the reality that they
| are not the same machine as the CPU, write your kernels in
| separate files, and launch them manually, like in Metal, OpenCL,
| and D3D12, etc. These days we even have DSLs like Triton that
| make kernel writing much more ergonomic than anything you would
| hope to achieve in Rust.
| bigyabai wrote:
| Is this satire? D3D12 and Metal aren't any less proprietary
| than CUDA.
| jacobgorm wrote:
| You can call their APIs without needing to compile your code
| with a proprietary compiler or adopt a bastardized version of
| C++.
| bigyabai wrote:
| Sounds like a C problem, not a CUDA problem.
| pavon wrote:
| > The best way to program GPUs is face up to the reality that
| they are not the same machine as the CPU, write your kernels in
| separate files, and launch them manually
|
| Isn't that how CUDA code is normally written?
| jacobgorm wrote:
| No. CUDA allows you to write all the code in a single file,
| and uses a preprocessor to split it back out and pass it
| through separate compilers, one for host and one for device.
| compiler-guy wrote:
| This true, but you can write the two separately if you
| want.
|
| The disadvantages of writing them together are listed in
| the various parent posts. But some code authors really like
| the convenience of having the two in the same file.
| melodyogonna wrote:
| You could also use Mojo, one language for all targets.
| carefree-bob wrote:
| I began to lose interest after the acquisition. Have you been
| following along, are they still going to open source it?
| YuechenLi wrote:
| I thought they already did and released the compiler source
| code under Apache 2.0.
| ecl3ctic wrote:
| The Mojo compiler has been open source for over a month
| now.
|
| And the Mojo standard library has been open source for over
| a year.
|
| It's all open source. Go check it out!
| carefree-bob wrote:
| Nice, thank you. There is an old python project I've been
| thinking about converting to Mojo.
| adgjlsfhk1 wrote:
| Or julia if you want a much more mature ecosystem.
| patagurbon wrote:
| I highly recommend Julia for (scientific) GPU programming
| but it would be nice if there was a larger community and/or
| funding behind the GPU side of things. It has very few core
| devs for what it is.
| eggy wrote:
| Julia has had a great CUDA story for a few years now, and
| this about 9 days old. Rust rejects buffer aliasing at
| compile time using Rust's borrow checker, but shared memory
| in cuda-oxide currently requires unsafe, but then there's
| HuggingFace's Grout and mistral.rs, so yeah, Rust is
| picking up ground here on Julia. How is OpenCL's
| performance these days?
| zackmorris wrote:
| I fell in love with MATLAB (or GNU Octave for free since
| you really pay for toolboxes/packages) back around 2004,
| despite it warts. So I second Julia, which is similar, but
| is a more modern functional language instead of imperative.
|
| I asked Google's Gemini if Julia can run on GPU unmodified
| without annotations, pragmas, intrinsics or similar
| manually-managed friction, and it said yes, but that data
| types must be swapped out for GPU-backed types:
|
| _If your code is written using vector /matrix operations,
| broadcasting, or standard linear algebra functions, it can
| run on the GPU entirely unmodified. You only need to change
| the input data type to a GPU-backed array (e.g., swapping a
| CPU Array for a CuArray from CUDA.jl)._ # A
| standard Julia function -- completely agnostic to hardware
| function custom_math!(C, A, B) @. C = sin(A) + 2
| * B # Normal broadcasted operation end
| # Running on the CPU: A_cpu = rand(1000) B_cpu
| = rand(1000) C_cpu = similar(A_cpu)
| custom_math!(C_cpu, A_cpu, B_cpu) # Running on
| the GPU (Unmodified function!): using CUDA
| A_gpu = CuArray(A_cpu) B_gpu = CuArray(B_cpu)
| C_gpu = similar(A_gpu) custom_math!(C_gpu,
| A_gpu, B_gpu) # Automatically compiles to native PTX!
|
| https://cuda.juliagpu.org/stable/
|
| This is the direction we should be going. So while Nvidia's
| Rust port is an important first step, it's an evolutionary
| rather than revolutionary achievement. But that's all
| Nvidia can really do now, since it's locked into its own
| paradigm like Intel/Microsoft and has gotten too big to
| think outside the box.
|
| Edit: PTX in its example stands for Parallel Thread
| Execution, the Virtual Machine (VM) Instruction Set
| Architecture (ISA) created by NVIDIA for its GPUs, which
| works similarly to Java byte code.
|
| Edit 2: Broadcasting is a feature in Julia that allows you
| to apply a function or mathematical operation element-by-
| element across arrays of different shapes and sizes,
| without writing manual loops. In Julia, broadcasting is
| syntactically indicated by a dot (.) placed before an
| operator or function name (e.g., sin.(x) or .+). <- I was
| today years old when I learned the term for this
| fg137 wrote:
| > Once you have allowed that proprietary cr*p into your C++
| codebase
|
| People have been doing that all the time for every kind of
| codebase. It's just part of the business. I don't see how it's
| worth having any emotions or opinions about it. Seems like you
| are wasting your energy.
|
| Are win32 APIs proprietary? So you decide to use them, use a
| wrapper/UI framework, or don't develop for Windows. Easy
| choice.
|
| Developing for embedded devices? So you read the manufacturers
| manual and implement based on the spec, use some sort of HAL if
| they are available, or you don't have a job. Even simpler.
| jacobgorm wrote:
| CUDA is not an API, CUDA is a language, so you cannot make
| that comparison.
| esseph wrote:
| > The CUDA runtime is a special case of one of the
| libraries provided by the CUDA Toolkit. The CUDA runtime
| provides both an API and some language extensions to handle
| common tasks such as allocating memory, copying data
| between GPUs and other GPUs or CPUs, and launching kernels.
| The API components of the CUDA runtime are referred to as
| the CUDA runtime API.
|
| From: https://docs.nvidia.com/cuda/cuda-programming-
| guide/01-intro...
| pjmlp wrote:
| CUDA is neither an API, nor a language, it is an ecosystem.
| fc417fc802 wrote:
| That's a nice way of saying that it's a dependency
| clusterfuck.
|
| I've never understood why we can't just expose the GPU
| ISA directly the way the CPU does. It's all getting
| compiled down at the end of the day so someone has to
| write a compiler for it either way. We'd be substantially
| better off IMO if it was all built directly into LLVM and
| then let middleware sort out the details.
| pjmlp wrote:
| Because even CPUs rather use JIT runtimes to deal with
| the various kinds of ISAs that exist.
|
| Naturally plenty of folks rather use software that
| doesn't take advantage of the hardware they paid for.
| imtringued wrote:
| That would require vendors to either stick with a single
| backwards compatible ISA like intel did for x86 or
| document how their graphics cards work.
|
| CPUs manage this by changing the internal micro-
| architecture, but historically GPUs only needed to
| support a graphics API and used that abstraction layer to
| freely change the hardware.
| dev_hugepages wrote:
| If i'm not mistaken, this already exists, and the
| assembly language here is called PTX
|
| https://llvm.org/docs/NVPTXUsage.html
| pjmlp wrote:
| PTX is a bytecode format, the CUDA driver JIT compiles it
| when uploading into the cards.
| fc417fc802 wrote:
| Can't the same also be said of much of the x86 vocabulary
| at this point?
|
| I appreciate that we can upload SPIR-V directly. The API
| still feels overly obtuse but it's not so bad.
|
| SYCL gets close but is language specific.
| worik wrote:
| > Are win32 APIs proprietary?
|
| Yes. And crap. Not in my code bases.
| josephg wrote:
| If you're going to make apps in windows, you need to call
| their proprietary API somehow. Maybe you do it via a
| wrapper library, or via electron or something. But that's
| the same thing, just with more indirection.
| ux266478 wrote:
| Find a way to get ring 0 without touching any system APIs
| and you can just make your own APIs. My programs shall
| never say "please."
| estebank wrote:
| Your programs shall never grace my systems.
| DeepSeaTortoise wrote:
| What makes you think he'll let you have a say in this?
| Btw, you wanna buy some ~~dea~~ usb sticks?
| rfgplk wrote:
| > If you're going to make apps in windows, you need to
| call their proprietary API somehow. Maybe you do it via a
| wrapper library, or via electron or something. But that's
| the same thing, just with more indirection.
|
| Not even close to being true. You can invoke syscalls
| directly, just needs a bit of reverse engineering. I
| wrote a bare metal libc library, with (not a whole lot
| of) effort I'm fully able to interface with the
| kernel/open windows etc. Fully statically linked, no
| libc, no win32, compiled on Linux executed on Windows.
|
| The problem is this isn't really well documented _at
| all_, and I even ended up attempting to get in touch with
| the Windows kernel dev team to give me the actual
| internal syscalls/endpoints, but they refuse to
| cooperate. Which is why writing anything for Windows is
| entirely pointless.
| miki123211 wrote:
| The problem is much deeper than that. Most OSes' syscall
| ABIs are not stable and could change without warning.
| What is stable is the dynamically-loaded libraries,
| shipped as part of the system. Linux is the notable
| exception here; the Linux kernel project doesn't ship a
| libc, and Linus is very famously opposed to "breaking
| userspace."
|
| There's nothing that can stop you from using syscalls in
| theory, but if you want your app to be portable across
| different OS versions, past and future, you'd better not.
|
| Incidentally, syscalls would also break Wine. The way
| Wine works is basically by shipping their own versions of
| Windows DLLs, which express their operations in terms of
| Linux APIs. Because Windows programs don't rely on
| syscalls, and call all system functions via the system-
| provided libraries, the Wine loader can just link Wine's
| version and let the program work normally.
| bentcorner wrote:
| https://blog.hiler.eu/win32-the-only-stable-abi/
| vhiremath4 wrote:
| > This isn't even close to being true. Here's a thing I
| did that made things way more complicated than is worth
| it for 99% of developers when there is a proprietary
| solution made so I do not need to worry about these
| things. Because it is so hard to work around it, it is
| entirely pointless to develop for one of the most used
| operating systems in the world.
|
| Just being totally honest this is how I read this comment
| when I insert context that seems important to me. I
| respect having principles but at some point there needs
| to be more value in practicality over your codebase not
| being locked into a proprietary framework at all.
| josephg wrote:
| > Not even close to being true. You can invoke syscalls
| directly,
|
| The windows syscall API is yet another proprietary
| windows API. Sure - you can call it without loading any
| DLLs. But you're still calling into a proprietary windows
| API.
|
| If you really hate calling proprietary windows APIs that
| much, maybe stop developing for windows? Develop software
| for linux. Or make your own kernel, or whatever. But if
| you keep developing software for windows, stop fighting
| it. Unless you have a very good reason, your software
| should try to fit in on its host platform. It should
| behave well, and work like other windows software.
|
| It's like travel. If you fly to France, try to fit in.
| Maybe learn a bit of French before you go. If you hate
| France, don't go.
| drdexebtjl wrote:
| That's insane. Windows does not have a stable syscall
| ABI. The way you're supposed to interact with the kernel
| is through the userspace library. Of course the kernel
| team refuses to cooperate.
|
| Do you want to keep reverse engineering the syscall ABI
| for every Windows edition and update ever? Do you want to
| ask your users to disable Windows Update?
|
| Regardless, I don't even understand how that's relevant,
| since you're still introducing a dependency on a
| proprietary ABI.
| worik wrote:
| > If you're going to make apps in windows
|
| ...your troubles are starting
| fsloth wrote:
| The CPU on most machines is quite proprietary. I don't
| understand this faux purity dogma.
|
| Practical computing is not and never has been an abstract
| pure concept. It's about making machines built by
| corporations to do usefull things at scale.
|
| There is no "non proprietary" computing unless you make
| your own stack.
| preg_match wrote:
| Yes but there are business costs to using high-level
| proprietary tools and libraries. If you write your app
| using win32, you won't be able to port is very easily.
| You're also stuck with whatever bad or bizarre decisions
| Microsoft made.
|
| It's even worse for CUDA. GPUs are expensive, and now
| you're vendor locked. You're between a rock and a hard
| place. Either spend millions in engineering time, or
| millions on price-gauged hardware.
| pjmlp wrote:
| I wonder which APIs you would use to port easily, because
| POSIX and Khronos aren't it either, as they are industry
| standards driven by companies where one has to pay for a
| seat at Open Group and Khronos offices.
| fsloth wrote:
| There is no "easy" porting.
|
| Once this is accepted the rest becomes easier as you are
| not wasting time trying to find a silver bullet.
|
| I mean it's then "just normal work".
| pjmlp wrote:
| Exactly.
| socalgal2 wrote:
| > If you write your app using win32, you won't be able to
| port is very easily.
|
| Is this still true? eg, Shopify saying porting is now
| easy so no need for abstractions.
| fsloth wrote:
| Porting has never been hard. Just follow the platform
| guidelines. Make sane architecture. Done.
|
| I mean _it's just work_. You don't need to invent
| anything. Just do the work.
|
| What _is_ hard is when people run after silver bullets to
| avoid all this work.
|
| Because people who don't understand software decide it
| would be cheaper to implement something only once. Or
| someone who does not really understand what they are
| doing insists that same C++ code runs automatically on
| all platforms.
|
| AI has given the software engineers permit from the
| beancounters to do the sane thing.
|
| Good software development orgs _have always_ done proper
| per platform ports.
|
| Also - there is nothing wrong in supporting only one
| platform as such!
| DeepSeaTortoise wrote:
| > Good software development orgs _have always_ done
| proper per platform ports.
|
| I really wonder why this was never fundamentally fixed.
| How performant a certain instruction on a specific
| platform is, how well it is supported and potential
| equivalents or sets of other instructions to emulate an
| equivalent are usually all very well understood.
|
| So there should be some graph of operations which can
| transform any software from and to the specifics of each
| platform. Especially because firmware + compliers +
| platform abstracting libraries are basically already just
| that graph, although (usually?) to lossy to be applied in
| reverse. Add the recent developments in very large scale
| statistics to it and it'd probably be quite possible to
| transform from and to generic intent in the
| implementation to the uniqueness of each platform. E.g.
| the theming differences between a MacOS UI and a terminal
| application served over serial or the processing
| capabilities of a VLIW CPU compared to a FPGA or a GPU
| server.
|
| Considering the enormous amount of work that went into
| compilers, better debugging and intermediate
| representations it seems like a huge missed opportunity
| nobody seriously asked the question whether information
| could be emitted that would allow for decompiling all the
| way back to the generic intent.
| fsloth wrote:
| " If you write your app using win32, you won't be able to
| port is very easily."
|
| This is wrong way around.
|
| If you don't support the platform your app runs on using
| the native api:s to the hilt your port is just bad.
|
| If you actually want to support multiple platforms _you
| actually need to support_ them from the ground up.
|
| This is speaking industrially and businesswise. A
| professional software business always has per-platform
| implementation resources. Or they have just one platform.
| Or they pretend they are multiplatform and then
| _everybody_ _daily_ fights with the problems this causes.
|
| Obviously those elements that can be portable should be.
| It's like Einsteins simplicity maxim - your codebase
| should be as portable as can be but not more.
|
| " It's even worse for CUDA..."
|
| No these are just the business and market constraints. If
| this does not make sense for your offering then don't use
| it. This feels like false FOMO - CUDA is not a silver
| bullet but it might be a specific solution to a specific
| problem.
| Asmod4n wrote:
| Win32 is the most stable abi on the Linux desktop.
| rfgplk wrote:
| Dead wrong. Win32 (externally) only seems stable, but
| internally it changes between Windows releases. Win7
| syscalls are completely different from Win11 syscalls,
| meaning if I want to release a binary _without relying_
| on Win32 I need to provide full syscall mappings _for
| each and every Windows version_. This doesn't happen on
| Linux.
| david-gpu wrote:
| _> > Win32 is the most stable abi on the Linux desktop._
|
| _> Dead wrong [...] if I want to release a binary
| _without relying_ on Win32_
|
| Then you are not using the Win32 ABI, are you?
| aseipp wrote:
| > only seems stable, but internally it changes
|
| That's literally the definition of it being stable.
| Programs written against an interface keep working
| despite the implementation changing. The Linux kernel
| also constantly changes internally but programs written
| against syscalls keep working, so it is stable; that fact
| doesn't stop being a fact just because I dislike
| perf_event_open(2) or whatever. This is all very basic
| and easy to understand.
| usernameak wrote:
| Those are _not_ a part of the API contract in case with
| NT kernel, though, unlike Linux.
|
| Also, there are OS-provided shims in ntdll.dll (which, by
| the way, isn't a part of Win32 platform API, but a part
| of the NT kernel interface).
| infamouscow wrote:
| Many software engineers forget they're employee of a
| _business_.
| Hendrikto wrote:
| > I don't see how it's worth having any emotions or opinions
| about it.
|
| Ironic, seeing as that is an opinion about it. Also weird
| telling people in an online discussion forum not to have
| opinions.
| da_chicken wrote:
| Oh, does that mean I get to say you're ironic because,
| literally, they didn't tell anyone to do anything. They
| said they didn't understand the worth of the opinion.
| You're interpretation is selectively literal in order to be
| rhetorical.
|
| Does that mean someone else gets say _I 'm_ being ironic
| because I'm selectively literal in order to be rhetorical?
| Well, okay, I guess it's harder now.
| TheGamerUncle wrote:
| You're interpretation is selectively literal in order to
| be rhetorical.
|
| Where do you think you are ?
|
| Most of us are in tech/IT/research the population in the
| spectrum here is orders of magnitude bigger than the avg
| on real life. SO yeah people will be literal in order to
| be rhetorical. Not even selectively, this is the one site
| where you NEED to use /s unironically.
| bigyabai wrote:
| That opinion is work-ethic related, not CUDA-related. The
| stance is reasonable too; why complain about
| characteristics of CUDA that can't be changed?
|
| Your job as a CUDA engineer isn't to decide whether or not
| a proprietary API/compiler is the right call. Your boss
| made that choice for you when they hired you, and you
| accept the tradeoff if you want to keep working there. It's
| like someone protesting Dotnet because they wish they spent
| the rest of their life working with Perl instead. You _can_
| do that, but it 's a completely different job with
| different pay grades and demands.
| MisterTea wrote:
| > I don't see how it's worth having any emotions or opinions
| about it. Seems like you are wasting your energy.
|
| Some people only care about the easiest path to their pay
| check. Some people actually care about software engineering.
| I tend to prefer the latter but hamstrung by the former.
| cpill wrote:
| yeah, just write a stub/wrapper around it and abstract. it's
| the classic coupling problem. nothing to do with CUDA
| tombert wrote:
| > I strongly dislike CUDA. Once you have allowed that
| proprietary cr*p
|
| Genuine question...why not just type "crap"? It's not even that
| much of a curse, but I've never really understood the point of
| self-censorship. If you don't want to curse then you could just
| use a non-curse word.
| lovelearning wrote:
| It may be to bypass censorship, rather than self-censorship.
| Some platforms block or shadowban comments with curse words.
| Not sure about this platform.
| arcanemachiner wrote:
| HN definitely doesn't give a crap about that word.
| smnplk wrote:
| can confirm, looks like crap is not on a list
| flamedoge wrote:
| pretty crappy list
| tombert wrote:
| I have written many words far worse than "crap" on this
| site. I haven't gotten in trouble over it yet.
|
| I do find it a little amusing, because commenters stopped
| criticizing my cursing the moment I started getting a
| good chunk of karma here. I remember in 2016 someone
| criticized me for using the term "shitposting"...I don't
| think I've gotten that kind of criticism _since_ 2016
| though.
| Tade0 wrote:
| Back then the term was still associated with 4chan.
| xbmcuser wrote:
| * is used to give emphasis and show that they are using the
| word as curse word rather just calling it bad
| josephg wrote:
| It doesn't read as emphasis to me. It reads like the person
| is trying hard _not_ to curse, and they think "crap" is a
| curse word. It's a little bit adorable, like I'm reading a
| comment from an obedient child.
| xbmcuser wrote:
| I guess you are not from the generation of texters. This
| how languages work we used to use * as a way to avoid
| getting censored it over time became a way to curse or
| give emphasis.
| josephg wrote:
| Sounds like a generational thing.
|
| I grew up texting. But in the 90s any profanity filters
| could just be turned off in settings.
| 10729287 wrote:
| People are getting used to censor themselves in order not
| to be reported, banned, or <<hurt >> other sensibilities.
| The words << rape >> couldn't be written in instagram for
| example, what a great way to deal with such a serious
| issue. Mainly an American thing spreading away from young
| people if you ask me. Sorry America, just being honest
| here.
| sampullman wrote:
| America is partly guilty, but TikTok censorship is a big
| part of the younger generation's tendency toward self
| censorship.
| bragh wrote:
| As much as I personally dislike TikTok, I don't think it
| is fair to it: cultural willingness for more sensor sheep
| on Internet started years before TikTok's popularity in
| the west.
| sampullman wrote:
| It's not the sole cause, but I believe it's the main
| driver behind a bunch of specific substitutions that are
| mainstream now or nearly so. For example, dih, ahh, and
| unalive. They may not have been invented on tiktok, but
| that's where they incubated.
| well_ackshually wrote:
| There's no such censorship on TikTok, it's entirely
| groupthink based on people saying "when I use that word
| my video is seen less so therefore it's being censored".
|
| Youtube is a lot more guilty of it though, as well as
| demonetizing.
| collabs wrote:
| well_ackshually, tik tok has a well known, long, and rich
| history of suppressing certain search keywords.
| sampullman wrote:
| How is that not a form of censorship? It is direct
| suppression of certain forms of speech.
|
| YouTube has its problems but I don't think it's had quite
| as strong of an effect on language.
| flumes_whims_ wrote:
| It sounds like there is a documented policy or proven
| that TikTok does it. Just people thinking it does leading
| them to self-censor. Then people see others doing it and
| copy it. So, I guess it is censorship but not by TikTok.
| nairboon wrote:
| You had profanity filters for SMS?
| mixermachine wrote:
| After reading through the threat here it seems more like
| a cultural thing. The US has quite a lot of filters for
| profanity. I remember from my youth that in 2009 Eminem
| was a guest in a Germany TV show and very happy to swear
| as much as possible without being censored.
| https://www.youtube.com/shorts/2OC-yKZ5Yag
| saberience wrote:
| I've been texting since it was first a thing (sms on
| Nokia phones) and no one I knows does this. We just say
| shit, fuck, and crap.
| nairboon wrote:
| Is that a cultural/national thing instead of an age
| thing?
|
| I've never had texts censored by texting providers,
| they're not supposed to read texts in the first place (at
| least around here).
| Sharlin wrote:
| I'm definitely from the generation of texters and there
| was never any censorship going on with SMSs... yours must
| be a cultural or regional thing.
| collabs wrote:
| Maybe you didn't have T9 enabled but I consider it
| censorship when I type bitch and it gives me chubi.
|
| Even now I wonder if I am allowed to type bitch here...
|
| I guess we will find out.
| Sharlin wrote:
| But typing "b*tch" with T9 is just as difficult (if not
| more) as typing "bitch". Anyway, I guess I never had a
| need to swear much over SMS. On IRC, on the other hand...
| lofaszvanitt wrote:
| stop feeding nonsense to the masses
| mixermachine wrote:
| Am I, with around 30, in this generation? Putting * in
| words seems like self censorship to me. Still, might have
| a cultural component. German here.
| eyko wrote:
| I'm in my 40s and * is self-censorship to me. It must be
| a cultural thing.
| lambdaone wrote:
| It can be used for in-jokey comedic effect. For example,
| referring to M*cr*sft W*nd*ws or Br*dc*m as though they
| were offensive terms. Or *r*cl*.
| lsofzz wrote:
| like for example, c*nt?
| kbenson wrote:
| Maybe more like p**p, as in "that cunt p**ped in my
| yard"?
|
| I'll admit, it never once occurred to me that people
| might be using censored characters to provide _more_
| emphasis that a word is a swear, but I guess it does
| indeed do that, at least to the writer. Whether that
| comes across to the reader, and whether the writer cares
| that their intention was understood... I 'm not so sure.
| lsofzz wrote:
| Hah. Yeah, I agree. It's one of those things I admit is
| `lost in translation` for sure.
| fc417fc802 wrote:
| What about ^#%& as was traditional in newspaper comics
| strips?
| ElFitz wrote:
| How about _" Pockmark!... Freshwater swabs!... Bully!.."_
| or _" Amoeba! Bashi-bazouks! Chowderheads! Certified
| Diplodocuses! Nyctalop! Ectoplasm!"_?
| yehoshuapw wrote:
| "Your mother was a hamster and your father smelt of
| elderberries!"
| RugnirViking wrote:
| I was so disappointed when I tried reading tintin in
| other languages and found the dear captain was straight
| up using slurs in those. I wonder whether the english
| language ones have been edited over the years to remove
| that sort of thing
| johanvts wrote:
| aeselmassor, sortborsgrosserer, sopindsvinefjaes,
| karnevalssorover!
|
| Findes der en Haddock/Egon Olsen tiradegenerator derude?
| latexr wrote:
| Known as grawlix or obscenicon.
|
| https://en.wikipedia.org/wiki/Grawlix
| westonmyers wrote:
| In any context I've seen, asterisks are for wrapping
| formatting and said formatting it to add emphasis. So being
| in the habit of typing ` _emphasised phrase_ `, for italics
| - regardless of whether the platform parses
| markdown/similar formatting, e.g. SMS.
|
| To have an unclosed asterisk replacing characters in a
| word? I've _only_ ever seen that as a way to bypass
| censorship. This spans communications from people currently
| in their 40s down to 20.
| vladde wrote:
| i do this to put emphasis, i always type "h*ck".
|
| (although it is a half-joke since it's definitely not a
| curse word imo)
| Tade0 wrote:
| I think a string of non-alphanumeric characters would work
| much better here, like "Once you have allowed that
| proprietary @#$&% into your C++ codebase"
|
| Leaves more to the imagination.
| allarm wrote:
| But this isn't perceived as emphasis at all. If I wanted to
| emphasize something, I'd be more likely to use something
| like *bitch* or something along those lines. Replacing a
| letter with an asterisk comes across as self-censorship,
| which is pretty silly - just use a different word if you're
| that uncomfortable with swearing.
| c0nducktr wrote:
| My guess is that jacobgorm will not reply. I would love a
| reply, because I want to understand how others think.
|
| I believe we'll be left to wonder.
| vachina wrote:
| Platform may retroactively make up and enforce rules that
| makes your content violate terms (and remove them)
|
| See YouTube.
| tombert wrote:
| I certainly dislike how everyone on YouTube is saying "SA"
| and "unalive" and "corn".
|
| It's one thing if it's some funny commentary channel
| avoiding those words, but what bothers me is the true crime
| YouTubers. In the subject of true crime, rape and murder
| are just things that are probably going to come up, and
| when they refuse to use the appropriate language, it comes
| off as infantilizing, which is weird considering that my
| _actual YouTube account_ is over 18, let alone the viewer
| using it.
|
| Advertisers ruin everything, I guess.
| pferde wrote:
| It's become so bad that even quality history youtube
| channels are frequently using euphemisms like "moustache-
| man" instead of just saying "Hitler", to avoid their
| videos being buried by The Algorithm, and therefore cut
| severely into their viewership.
| magicalhippo wrote:
| I think it's a win-win. Intelligent people easily knows
| what they're talking about, and the others don't get
| offended. /s
| vincnetas wrote:
| glad i found that /s at the end
| Someone wrote:
| > even quality history youtube channels are frequently
| using euphemisms like "moustache-man" instead of just
| saying "Hitler"
|
| That can be quite confusing. You had German mustache-man,
| Russian mustache-man, French mustache-man (Petain),
| French small-mustache-man (de Gaulle), Spanish small-
| moustache-man (Franco)
| thaumasiotes wrote:
| If I know that your terminology includes "French small-
| mustache-man", I'm going to be really confused over
| "German mustache-man".
| MisterMunchkin wrote:
| I don't think those filters are even real, I think it's
| just mass-hysteria. I call these kinds of behaviours
| "traditions", but I'm not sure if there's a better term
| for it.
|
| Basically someone comes up with something which is
| nonsensical, but plausible. Like believing that their
| videos are unpopular because they said the word "rape"
| and the algorithm magically got them, rather than because
| their videos suck. Then someone else sees that and starts
| thinking it is true. It silently spreads across the
| population.
|
| I've seen this in organisations, where new recruits
| haven't been properly trained. Someone has come up with a
| method which is wildly incorrect and illegal, but
| plausible. The other new people around them have copied
| them. They've become slightly more experienced people,
| they've taught the next round of new people.
|
| Before you know it, half of the organisation is doing
| something hilariously wrong, and they all sincerely
| believe it is the right way of doing it, because everyone
| does it. It's just self-reinforcing at that point.
| efilife wrote:
| I am sure they are bullshit. Like when they mute cursing
| and "risky" speech, but when you enable autogenerated
| subtitles they show up there. Youtube knows what thay
| said regardless if it's censored or not. It's so fucking
| stupid
| thaumasiotes wrote:
| > I call these kinds of behaviours "traditions", but I'm
| not sure if there's a better term for it.
|
| In psychology that kind of thing is referred to as
| "superstition".
|
| More specifically, "superstition" in this sense refers to
| the phenomenon of copying someone else's successful
| approach to a problem you have. (In your example, getting
| views on youtube.) Since you don't know what parts of
| their approach matter, you copy the effective parts and
| the ineffective parts equally.
| tombert wrote:
| I always associated the term "cargo culting" with that
| but I think that term has largely fallen out of fashion
| (probably for the best).
| thaumasiotes wrote:
| Actually, I was a little too specific here - superstition
| also refers to copying your own successful approach.
| IslandRebel wrote:
| No it isn't mass hysteria. YouTube has a set advertiser
| friendly guideline. It will scan uploads and streams
| automatically.
|
| YouTube used to demonetise profanity unless it was mild.
| YouTube would demonetise profanity in the first X number
| of seconds of the video. These rules change and have been
| relaxed of April last year, but generally these rules
| still exist.
|
| There isn't a hard filter if you say "suicide" you
| automatically get it. However it increases the likely
| hood of demonetisation. So people avoid it to be safe. So
| you end up with people using stupid euphemisms all the
| time.
| ashdksnndck wrote:
| But do we have any evidence that "suicide" counts as a
| negative signal and "unalive" doesn't?
| pimanrules wrote:
| A (baseless) hypothesis: perhaps there are plenty of
| YouTube creators who use the proper, mature terminology
| but you never see their videos because the algorithm
| really is penalizing them for it...
| jimbob45 wrote:
| His kids were probably watching him type over his shoulder
| and he didn't want to hear, "Daddy, what does crap mean?"
| tombert wrote:
| I am arguing that they would ask that anyway.
|
| I guess I never understood censorship when it's plainly
| obvious what you're censoring. Anyone who can read will
| clearly know that it said "crap", so I don't see how it's
| fundamentally different than just saying the word. You
| still put the word into my brain.
| Cthulhu_ wrote:
| "Daddy, what does cr*p mean?" Kids aren't stupid and this
| self-censorship isn't protecting anyone from anything.
|
| (if a platform is serious about Bad Words for whatever
| reason (moral?) they would also forbid character
| replacements; ultimately it's the intent, not the word
| itself, that they try to steer with rules like that)
| xxs wrote:
| I'd consider that a joke - but also zero issue using any
| words talking in front of kids. You might wish to explain
| them anyways.
| capl wrote:
| cause you might go to the eternal flames if you say a no-no
| word online
| brobdingnagians wrote:
| Your comment only makes sense in context if you believe in
| a deity who is too dumb to understand the difference
| between cr*p and crap. I for one do not worship a Bayesian
| spam filter.
| ImHereToVote wrote:
| What if a toddler is browser HN and sees the curse word?
| allarm wrote:
| Oh, my, indeed! That's gonna traumatize the poor dude for
| life.
| bmacho wrote:
| IMO cr*p and crap are both valid but separate swear words.
| People have a wide option to choose from when they want to
| swear, and people like variety (much much more than LLMs do).
| People also tend to influence each other with their usages:
| cr*p is popular because it is popular.
|
| Otherwise cr*p is just as good as crap, shit, horseshit,
| poopoo or such.
|
| edit: * replaced with \\* as HN interprets asterisks as
| formatting for emphasis. Thx latexr for informing me
| latexr wrote:
| To use a literal asterisk on HN, do ** or \\*. Your single
| usage in two places instead turned the majority of the post
| italic.
| throwaway85825 wrote:
| Normative behavior has shifted due to pervasive censorship
| and surveillance.
| justushamalaine wrote:
| I thought that cp*p is some kind of ugly cuda pointer
| declaration :D And being non-standard C++ syntax it wouldn't
| compile.
| moffkalast wrote:
| Least ugly cpp syntax.
| Xunjin wrote:
| As a person who prefers Rust more than cpp, gotta say
| it's also "Least ugly Rust syntax"
| jacobgorm wrote:
| Because I know it is not technically crap, a lot of competent
| people worked on it, most with good intentions. I suppose it
| is better described as a cleverly designed Trojan horse than
| can infect your software and make that software become crap,
| in the sense that it becomes harder to maintain, increases
| code duplication, messes with your build system, ties your
| build system to platforms that have their toolchain binaries
| available, etc., etc., without bringing any long-term
| benefits over learning things the hard way.
| pid0x17 wrote:
| As someone only recently getting into HPC, what do you mean
| when you say learning things the hard way? What would you
| suggest?
|
| I recently started learning CUDA and parallel programming
| paradigms.
| jacobgorm wrote:
| For learning that may be a fine approach, but CUDA (in
| C++) really tries to hide what is going on behind the
| scenes, which is roughly:
|
| 1) code gets split between a host part that goes through
| your normal compiler, and a device part that goes through
| the GPU compiler. You may as well write the kernels
| separate and compile them via a separate compilation
| step, and keep your trusted host compiler for the host-
| side code.
|
| 2) data needs to move between the host and devices via
| explicit buffer transfers and synchronization steps, CUDA
| tries to hide this with annotated pointers, but it is
| really easier to think about those as just buffers that
| you allocate and transfer IMO, instead of trying to
| transparently share pointers between host and device like
| CUDA does.
|
| 3) kernel launches can we wrapped in a function similar
| to:
|
| void RunKernel(const char *kernel_name, size_t width,
| size_t height, size_t depth);
|
| Instead of the funky <<< >>> syntax that CUDA for C/C++
| imposes. The problem is that once you start putting that
| in your code, it stops being C++ and stops being portable
| to non-CUDA GPUs. The launching and grid settings can be
| a bit hard to grasp at first, but sugarcoating that in
| bastardized C++ syntax does not absolve from having to
| understand it eventually.
|
| So a good place to start might be an OpenCL or Metal
| primer, depending on the hardware you have available.
| D3D12 (and probably Vulcan too) makes this much harder
| than it should be, with too much boilerplate but is
| overall a mature and well-designed API should you wish to
| develop for Windows. Starting with WebGPU might also be
| good these days. It has a very different shader language
| than the others, but the rest of the concepts are
| similar, and it has a strong emphasis on making things
| async, which is what you want for performance anyways.
|
| Claude/Codex should be able to get you moving very
| quickly.
| pid0x17 wrote:
| Thank you very much for the effort you put into your
| advice!! I think I will start with WebGPU (wgpu), even
| though I have an Apple Silicon Macbook. I would really
| prefer to work with Rust instead of C++ because I am not
| good with C++. (I believe) I am good with C, so my C++
| code looks like C code, and I am kinda learning the
| differences as I learn CUDA, which is a terrible way to
| learn C++, I guess.
| scottLobster wrote:
| The long term benefit is that there are more developers
| with CUDA experience available to hire than there are with
| any of the "hard ways" you mention.
|
| Not saying you're wrong, but my career got a lot less
| frustrating when I started focusing more on the product and
| less on the ergonomics of the implementation. If you need
| to build a house and the customer isn't willing to pay for
| brick, you use vinyl siding.
| lenkite wrote:
| Because nanny states are tracking your keyboard nowadays.
| ValleZ wrote:
| Not all crap is created equal, some needs censoring.
| shevy-java wrote:
| > I've never really understood the point of self-censorship.
|
| Some platforms disallow certain words. In order to bypass
| that, some people use the asterisks. That's just as one
| possible answer to your question; there can be many different
| reasons for self-censorship, but to me the most logical one
| is when one tries to work around crappy restrictions, such as
| on terrible reddit (they killed old.reddit recently; I
| retired before that due to moderators being insane, but I
| also said that if old.reddit is gone, I am gone anyway - the
| requirement to now log in, totally defeats old.reddit com's
| usecase. Then again reddit went downhill many years before
| that already, so not a real loss.)
| jjtheblunt wrote:
| he could be a farmer and didn't want to type crop.
|
| alternately, perhaps he meant to match all of cp, crp, crrp,
| crrrp, and so on. the dude might really like regexes.
|
| /s
| nicwilson wrote:
| Launching kernels manually is an error prone PITA which I
| believe is the principle reason for CUDA's popularity. Having
| the compiler give an error when you mess up is a huge benefit.
| But having the compiler allow you to express "I want to launch
| this kernel over a grid with these dimensions, with these
| arguments" as a single expression is where the vast majority of
| the value comes from.
|
| The having it all in a single file is mostly an artefact of the
| fact that it is C++, because C++ is single file at a time
| compilation. In D (which is multiple files in a single compiler
| invocation) with DCompute (which targets CUDA and OpenCL with
| upcoming support for Vulkan and Metal), you are required to
| write the kernels in a separate module, but you get all the
| benefits of the compiler complaining when you mess up _and_ the
| expressivity of "launch me this kernel".
| oblio wrote:
| > Having the compiler give an error when you mess up is a
| huge benefit.
|
| Shouldn't this be alleviated by the current code generation
| machines?
| nicwilson wrote:
| Well yeah, but then you are using code generation, not
| writing code directly.
| oblio wrote:
| I meant LLMs :-)
| high_na_euv wrote:
| You are trying to say that llm can replace compiler?
| oblio wrote:
| In general, no? But they should help with this part:
|
| > Launching kernels manually is an error prone PITA which
| I believe is the principle reason for CUDA's popularity.
| ActorNightly wrote:
| Why is this even a question, of course they can.
|
| Write python code, ask any llm to translate it to C, then
| compile the C code - if it produces errors or fails to
| run, ask LLM to fix it. Then take it a step further and
| ask it produce machine code, and repeat the procedure.
|
| Then RL the llm on the above, and you basically have a
| Python -> Machine code compiler. If you cover every
| single possible python syntax, every single possible C
| syntax, every possible standard library call, and all the
| compiler optimization examples (all of which is a final
| set), you should get something that is extremely
| accurate.
| winwang wrote:
| Having also played with Metal and WebGPU (at least years ago),
| I would say that CUDA is, amazingly, the best GPGPU API we
| have. Do I wish we had an open source parallel programming
| language as good or better than it? Yes. But asymmetrically
| hating on CUDA like this is how we continue to lag behind it in
| UX.
|
| > The best way to program GPUs is face up to the reality that
| they are not the same machine as the CPU, write your kernels in
| separate files, and launch them manually
|
| Not to mention that this is a completely sane way to use CUDA
| as well.
| pjmlp wrote:
| People that attack proprietary APIs always miss the point why
| most devs outside FOSS circles prefer them.
|
| Turns out when one isn't ideologically against something they
| aren't willing to put up with a lesser experience just for
| the cause.
| darkwater wrote:
| I know it's not the same thing because proprietary vs open
| software it's way less important but, generally if you are
| not ideologically against something you can easily follow
| the stream and do lot of nefarious actions, especially if
| the action has enough degrees of separations from the
| actual nefast outcome.
| 15155 wrote:
| I don't mind CUDA, I do mind that all of the SDKs don't
| dynamically load the various CUDA shared libraries at runtime..
| intertwining itself into your application linking process makes
| for extreme binary portability inconvenience.
| anon291 wrote:
| ? I find it hard to see the issue here. Just put it in a
| separate file and call it?
| throwaway334212 wrote:
| Anyone here looking at Modular's offerings?
| bsaul wrote:
| i'm surprised modular's doesn't get much traction. The
| promise seems super interesting, and chris latner has the
| record to back up his claims. If someone has an explanation..
| harrison_clarke wrote:
| from what i can tell, you're going to be stuck with that no
| matter what you do
|
| i'm currently using vulkan, and HLSL via dxc. which should be
| portable but it's not.
|
| apple refuses to support vulkan, and relies on moltenvk and
| there's a bunch of OS/hardware/driver differences no matter
| what you do, that you'll probably have to feature test for, and
| compile a few different versions of your code no matter what
| you do
|
| i think if you're doing something that you don't have to
| distribute to customers, just picking one stack and getting
| locked in has some appeal.
|
| it leaves you vulnerable to lockin. but, especially in the age
| of ai, "claude, port this to vulkan" seems like a good enough
| defense against that
| andirk wrote:
| What is a proprietary crop?
| mstkllah wrote:
| It's actually creep.
| mschuetz wrote:
| > The best way to program GPUs is face up to the reality that
| they are not the same machine as the CPU, write your kernels in
| separate files, and launch them manually,
|
| Yes, I also prefer doing it that way, but in Cuda with the
| driver API. Allows you to handle kernels like shaders,
| including editing and hot-reloading at runtime.
|
| The reason I'm sticking with CUDA is because it's by far the
| most convenient API to use, without nonsense like 50-liners to
| alloc memory or the need to manage descriptors, bindings, queue
| families, etc.
| david-gpu wrote:
| _> The reason I 'm sticking with CUDA is because it's by far
| the most convenient API to use, without nonsense like
| 50-liners to alloc memory or the need to manage descriptors,
| bindings, queue families, etc._
|
| I was there when the OpenCL committee was deciding on that
| sort of stuff.
|
| As I recall, and it's been two decades and a lot of sleepless
| nights since then, there was real pushback at the time
| against OpenGL-style default bindings. So folks didn't want
| to establish an implicit command queue or any other default
| objects attached to other objects. Part of it is because
| OpenGL was perceived as clumsy and passe, some of it was
| because it is not friendly to multi-threaded applications.
|
| Those first meetings were a shitshow full of tension,
| implicit threats from Apple, and backroom deals. Kudos to
| Neil Trevett for chairing the group; I I bet it wasn't fun
| for him either.
| mschuetz wrote:
| That's unfortunate. Cuda has shown that, when done right,
| defaults and a convenience layer can make for a well
| received API without sacrificing performance.
| david-gpu wrote:
| Yes, I wanted defaults as well, particularly a default
| context and command queue.
|
| Design by committee is a real phenomenon. And people in a
| committee know that, but they are also helpless.
| ActorNightly wrote:
| Yep.
|
| Ive essentially followed that paradigm with Python and C. I
| start out writing Python code. If I need something to run fast,
| I build a standalone C application that either reads from a
| file or listens on a socket, and just invoke it from Python. No
| need to write the entire thing in Rust and deal with all its
| semantics when it will be at best like 2% faster.
| melihelibol wrote:
| You don't need to use the CUDA (SIMT) programming model if you
| don't like it. The project includes cutile, which lets you
| program the GPU using tensors. It feels a lot like programming
| the GPU using numpy and triton.
| jacobgorm wrote:
| As it happens, I just got my employer's permission to release
| as open source a Triton back-end for Metal and D3D12 GPUs here:
| https://github.com/dropbox/neso .
|
| As an example of you can use it to deploy real models there is
| this project doing ASR and TTS:
| https://github.com/dropbox/nspeech .
|
| Finally, I am also going to be switching the inferencing part
| of Witchcraft from current Candle on MacOS and OpenVINO on
| Windows to just Candle with Neso;
| https://github.com/dropbox/witchcraft
| manyatoms wrote:
| How does this compare to vectorware?
| (https://www.vectorware.com/blog/)
| LegNeato wrote:
| VectorWare founder here. We are working with them and stoked
| they are investing more in Rust. I just gave a talk at RustConf
| about our different takes
| (https://rustconf2026.sched.com/event/2KNQj/making-gpus-
| feel-...). The video isn't up yet but you should check it out
| when it is. The efforts are complementary.
| binarybana wrote:
| Towards the end of the post, we (NVIDIA) mention that this work
| was done in collaboration with Vectorware and others in the
| Rust community. And we can't wait to build further with the
| community.
| bt1a wrote:
| Will it then be possible to query TJunc hotspot temps on linux?
| mococa wrote:
| The world is unsafe
| Xeoncross wrote:
| Rust just makes you sign a waiver first.
| mococa wrote:
| AI slop article, how can I trust on this?
| pjmlp wrote:
| The same way as people trust AI sloppy on their code.
| shmerl wrote:
| Nvidia only? Typical.
|
| This is more promising: https://github.com/Rust-GPU/rust-gpu/
| anon291 wrote:
| Once again... There's literally no point to a low level shader
| language for heterogenous back ends.
| hobofan wrote:
| Why? The point of a shader language is to define a function
| that outputs some graphics. Why should that not be portable
| between GPUs/CPUs of different vendors?
| shmerl wrote:
| More generally any GPU computation, not necessarily
| graphics. The above argument could go that there is no
| point in high level languages for CPUs either and everyone
| should just always use assembly, which is obviously false.
| Same can go for GPUs.
| dunlin wrote:
| Rust for GPU programming? My CUDA debugging sessions just got a
| whole lot less painful, hopefully.
| bcjdjsndon wrote:
| There's a lot of unsafe code at that level... Rust probably
| makes it more painful for little gain
| Driftbench wrote:
| Been waiting for something like this. CUDA C++ is a pain; Rust's
| safety for kernel programming could be a game changer.
| evaltoken wrote:
| Interesting direction from Nvidia. Anything that makes writing
| reliable GPU code less painful is definitely a good thing.
| nullbio wrote:
| Makes me sad that Go doesn't get love. I feel like Go is perfect
| for LLMs.
| Blackarea wrote:
| Don't think we're gonna see garbage collections anywhere near
| gpu for many reasons.
| pjmlp wrote:
| Go's type system is not at the same level as C++, Fortran,
| Python, Julia, Haskell, Java, to quote the languages with CUDA
| support from NVIDIA and their partners.
| winwang wrote:
| Really exciting but it reads like Claude instead of what Nvidia
| posts have generally been like in the past. I don't need nor want
| my tech blogs to sound like a young adult novel.
| aabhay wrote:
| I've had this happen to me several time over the past weeks and
| it's gone from quaint to humorous to farcical to outright "is-
| the-world-gaslighting-me" insane.
|
| Just today I was reading Stanley Druckenmiller's op ed in WSJ.
| This dude is like 80 and has made billions of dollars, and he
| got Claude to write his op ed???
|
| Unbelievable. And the tells are so obvious, yet people still
| love the Claude-like quips and odd grammatical choices that
| read like halfway asshole halfway mid-sentence confusion.
| sebmellen wrote:
| That op ed was absurd. I respect Druckenmiller a lot and am
| always impressed with his lucidity in interviews. The Claude
| "ick" was all over his writing.
| IshKebab wrote:
| Yeah definitely Claude. Lazy authors, if you're going to get AI
| to write for you please use Astra instead - it makes _way_ less
| annoying prose than Claude.
| boonzeet wrote:
| NVIDIA is part of that shift NVIDIA CUDA Rust closes that gap
| salsa_catsup wrote:
| Does this mean I can write shaders in Rust for use with WGPU or
| Vulkan?
| ivanjermakov wrote:
| WGPU/Vulkan don't work with PTX shaders by default, additional
| translation would be needed.
|
| On a side note, Vulkan has extension to launch CUDA kernels:
| https://docs.vulkan.org/refpages/latest/refpages/source/VK_N...
| berkes wrote:
| The way I understood it, rust would become an option next to
| Vulkan, WGPU (and opengl etc?).
|
| But only for compute tasks. So, practically an alternative
| language to write compute shaders in.
| PudgePacket wrote:
| You have been able to for a while with rust-gpu
| https://github.com/Rust-GPU/rust-gpu.
| laggui wrote:
| For compute shaders, you can already do this with CubeCL:
| https://github.com/tracel-ai/cubecl
|
| You write kernels in a Rust DSL using #[cube], it supports
| WebGPU through WGSL and Vulkan through SPIR-V, along with CUDA,
| AMD via ROCm, and Metal. (disclosure: I am a contributor)
| jauntywundrkind wrote:
| Worth mentioning that Nvidia open sourced CUDA Tile IR ~8 months
| ago. And yes the code is open source too.
| https://news.ycombinator.com/item?id=46330732
| Danox wrote:
| The recent circular moves that Nvidia is making is designed to
| wrap things around them, anything to keep the AI model party
| going.
| lsofzz wrote:
| I read this the other day - definitely think it is the right
| direction Nvidia is taking.
|
| Thank you NVIDIA - for once (not twice though - you've given us
| nothing but despair for Linux+GPU).
| jtfrench wrote:
| I wonder how many parallels there are between CUDA's Tile
| abstraction and that of Metal.
| HexDecOctBin wrote:
| Anyone know when Rust's std::autodiff will become stable?
| Assuming this Rust support expands to other GPU vendors, autograd
| will probably be the only reason to use Slang instead of Rust
| anymore.
| minraws wrote:
| Not in 2026.
| chkmr wrote:
| I was told in the 2025 LLVM dev meeting that it will always
| stay in nightly because it's not practical for them to provide
| long-term stability guarantees that is expected of stable Rust.
| HexDecOctBin wrote:
| That's a shame
| calini wrote:
| Do it in Go and I'm interested
| jrhey wrote:
| Go is simply not feasible for CUDA work mainly because of the
| go runtime that manages GC, allocation, scheduling etc
|
| GPU kernels want explicit memory control and as little go-
| runtime like overhead as possible
| michalsustr wrote:
| Not a cuda programmer, but since they're making a new API, why
| would they already make it inconsistent at start? :-/ I'm
| referring to the examples a,b,c vs z,x,y (different ordering of
| output elements)
| m00dy wrote:
| Thank you Nvidia !! You're in the right path.
| Swiffy0 wrote:
| My understanding is not so deep regarding GPU programming or
| Rust... Does this mean anything regarding Nvidia GPUs and
| WebAssembly / WebGPU?
| onion2k wrote:
| No. Rust is a non-web programming language.
| kalikingkorea wrote:
| hmmm interesting
| amelius wrote:
| Does this weld Rust to CUDA? Can we use the Rust code to run on
| other archs?
| singularity2001 wrote:
| yikes, I prefer python taichi similar to
|
| @fast def calc(x,y):pass
| lambdaone wrote:
| The momentum behind rust seems absolutely unstoppable at the
| moment, in the light of this, the adoption of Rust into the Linux
| kernel, and the adoption of for formally verified software by
| Amazon and Microsoft.
| ModernMech wrote:
| Deservedly so.
| fhn wrote:
| not too long ago, commenters on HN hated Rust and would never
| use anything written in Rust. So, now that Rust is in Linux,
| they shouldn't be using Linux either.
| loup-vaillant wrote:
| Okay, so, GPUs are taking one more step towards being general
| purpose massively parallel machines. That's cool.
|
| What would be even cooler though would be for GPU vendors to
| start giving us the user manual. An I mean the _real_ user
| manual, that explains how to use their piece of metal _when all
| you have is that piece of metal_. That means a precise
| description of the wire protocols, the data format of the buffers
| we send to & get from the GPU, the ISA of the cores we have
| access to, the relevant performance characteristics...
|
| In other words, enough information to write a state-of-the-art
| driver for any OS. _That_ would be cool.
| surajrmal wrote:
| They don't need to do that to sell their hardware so why would
| they do that? On the other hand, they have strong incentives to
| not give you that level of access and information. The only way
| this will change is by having some disruption by way of a
| competitor who sells hardware with that feature as being a
| major reason why it takes off.
| laughingcurve wrote:
| GPGPU https://en.wikipedia.org/wiki/General-
| purpose_computing_on_g...
| floil wrote:
| They don't release it because exposing a stable instruction set
| would kill their ability to quickly iterate, to release silicon
| with bugs that can be papered over with software fixes, as
| fixing bugs in chips is very expensive in terms of time to
| market, and undoubtedly to charge more for what looks like a
| hardware feature but actually is a software feature.
|
| It's been this way for 25 years and I don't see it changing.
| VikingCoder wrote:
| A stable instruction set would be nice.
|
| But hi, if I spent $10,000 on a piece of hardware, let me
| program the metal, thanks.
| corysama wrote:
| I've been programming GPUs since the PlayStation1. The way
| they work under the hood has changed fundamentally maybe 4
| times in that span.
|
| I can't compare it to changes I've seen in CPU architecture
| since then. Maybe like: Compare the NES with its 6502 and
| per-cartridge mappers vs. a IBM 386 PC. Now repeat that
| shift 2 or 3 more times.
| PhunkyPhil wrote:
| How is this different than CPUs? I suppose in the last 5
| years the architecture and tape has changed a lot as they
| move to make more LLM capable?
| mathisfun123 wrote:
| > GPUs are taking one more step towards being general purpose
| massively parallel machines
|
| this has nothing to do with becoming more general purpose (GPUs
| will never be general purpose - it's literally physically
| impossible).
| soleveloper wrote:
| So now every already written kernel can be re-written in Rust and
| have competitive performance to the cpp version?
|
| If so, that's really big.
|
| And to add the Next natural strp - custom codegen for simulating
| gpu compute and memory without Nvidia gpu.
| revengerwizard wrote:
| I think it would be much nicer, although unrealistic at the
| moment given the number of combinations of GPU vendors and
| variety of hardware, to directly target the underneath GPU ISA
| machine code.
|
| Since I can write a simple compiler to target x64 machine code,
| it should be possible to write one to target my GPU.
|
| Though, I'm certain that vendor lock is probably more profitable
| for them.
| matthewfcarlson wrote:
| I don't know for sure but I'm pretty sure the ISA changes quite
| frequently for Nvidia.
| cmrdporcupine wrote:
| My thoughts on this, as a person who has recently coming around
| to working in this space is that up to now the convenience and
| "simplicity" of working in CUDA as it is has been a giant moat
| for NVIDIA. Having a whole toolchain with a C++ dialect and a
| giant extant pile of code out there that looked familiar to
| people meant they've "won" the AI wars.
|
| And in that context NVIDIA had every motivation to keep their
| SDK somewhat abstracted higher up the chain and fully under
| their control and then be free to innovate in the lower bits.
| And this served them well as well as their customers.
|
| My sense is that now with agent driven development this is
| basically evaporating. Agents are capable of at least
| prototyping/writing kernels for any hardware and ISA. e.g.
| OpenAI built their own custom hardware and ISA for it and then
| set agents loose on it writing kernels and claims great
| success. At least they're claiming this. And from my own
| experiences as a n00b entering this space, I can believe it.
|
| TLDR I don't think vendor lock on the software side is going to
| work out for them as a strategy.
|
| But luckily for them they continue to have really good hardware
| and good access to semiconductor fabrication. But just look at
| HotChips 2026 a couple weeks ago and look at the huge variety
| of new inference hardware coming down the pipe which looks
| completely _unlike_ NVIDIA /CUDA.
| thetwentyone wrote:
| I've been enjoying writing Julia code and then having it run on
| the GPU via the packages at https://juliagpu.org
___________________________________________________________________
(page generated 2026-09-17 20:01 UTC)