URI:
       [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)