Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

I’d argue that a factor in CUDA’s success is their army of in-house researchers which use CUDA to do novel things. Sometimes those things get turned into products (OptiX) other times they are essentially DevRel to show off what the hardware can do and documentation for how to do it. Additionally I’m sure they use pre-release hardware and software and give feedback about how to improve it.

I don’t know what AMD has in mind for this acquisition but I could see there being a lot of value having an in house LLM team to create models for customers to build on, run in benchmarks, and improve their products.



Yes, nvidia spends a lot of time and money developing software that induces demand for their GPUs.


Nvidia also spends a metric shit ton of money to make sure professors use and teach on their platform.

I don’t remember any alternatives in uni. Maybe OpenCL but only lightly mentioned


As someone who has designed and taught those courses, my experience (admittedly only one persons) is that you pick what will work with the least hassle - because you'll have plenty of hassle elsewhere and probably no real time to deal with any of it without making more.


This is actually one of my favorite comments of all time, because it's how software wins. The software that students use is the software the industry uses about five years later.


Not always.

One of our machine learning courses was taught in Matlab.

Unsurprisingly, nobody used Matlab after uni, or 5 years later.


Also did an algorithms in machine learning course in matlab

It’s a great language choice for it

It weeded out the script kiddies who incorrectly signed up wanting a Tensorflow or PyTorch course

It’s a fairly bland and slow but usable language for the task

Shits me off to no end a lot of engineering courses moreorless indoctrinate their students into using it unconditionally, though

Octave exists but is a relative pain to use


It's still a pain spending time learning matlab syntax/semantics when you could just, idk, use C or Haskell instead


Matlab is fairly easy to work with (initially) and is great when learning a new concept, instead of learning that plus arbitrary syntax of the tool.

It isn't particularly fast though, and the simplicity quickly becomes an obstacle when solving a real problem.


My experience in university was the exact opposite. The stuff we were using was 5-10 years behind what industry was using.


> The software that students use is the software the industry uses about five years later.

which is why it's anti-competitive for a company to sponsor university courses (such as providing educational versions for free). It should be disallowed, unless the course is _specifically_ teaching the software, rather than a general course.


That's competitive, not anti-competitive.

Anti-competitive means others are not allowed to do the same.


> others are not allowed to do the same.

it's usually the case where the sponsor is the sole sponsors (aka, the course does not teach both X and Y, esp. if X is given to the uni for free).

It's anti-competitive to allow companies to embed themselves in general courses, despite it not being so by the letter of the laws.


Sort of -- but basically no course is going to teach X and Y, if they're functionally equivalent ways to learn about Z, because almost no course is specifically about X or Y, it's about Z, and learning both X and Y isn't germane to learning Z, just learning one is enough.

As long as the companies behind X and Y both have a fair shot at sponsorship, this isn't really anti-competitive. It's literally a competition in which the companies compete for student and faculty attention.

Anti-competitive would be a company saying "you must teach X and not Y in your class about Z because you use Xco's mail services" or some other such abuse of one contractual relationship for an unrelated gain.


They say "hey if you want to teach a class using X, we'll sponsor it."

A competitor can complete for that sponsorship. So long as it's done on direct merit of the value, there's no problem.

Anti-competitive would be providing products or services and forcibly leveraging that into an unrelated contract.


>Nvidia also spends a metric shit ton of money to make sure professors use and teach on their platform.

Do you have a source for this claim? Or do you simply mean that since they spend money making it better that professors end up using it on their own accord?


I hold an NVidia instructors cert from when I worked in academia. They even give you access to hardware while you’re running courses on it. It’s super easy and totally free.


I won an Nvidia GPU while I was doing my advanced graphics course for making custom shaders.

Had to buy a new power supply just so I could use it.


They co-author the definitive CUDA textbook, and it's based on their sponsored class (You can find the story in the intro of the book.) https://www.amazon.com/Programming-Massively-Parallel-Proces...


Co authoring a book is not "metric shit ton of money".


No, I think it’s a source for the claim and not the actual evidence of what they spent it on.


OpenCL was discussed more frequently in classes about a decade ago. However, I haven't heard it mentioned in the last five years or so.


Yea people tried to push OpenCL back then, it simply was just inferior


Opencl is horrible compared to cuda


Especially since AMD and nVidia have similar costs for a GPU


AMD has hip which is basically a CUDA clone.


Only for those that equate CUDA to C++ only, and poor tooling.


They've replicated many of the libraries as well. But yea haven't personally tried it.


Not exactly but they give massive discounts and the tools are much more appropriate to use for late undergrads and grads.


> Nvidia also spends a metric shit ton of money to make sure professors use and teach on their platform.

Nah. People teach what they use because that's what's easy.


It's definitely both.

I'm sure plenty of professors use CUDA in their courses because it's what they actually use. At the same time, in 2013 when I was in college I took a course on "parallel computing" as a CS elective. The professor told us on day 1 that NVidia was sponsoring the course and had donated a bunch of GPUs to the clusters we could remotely connect into for the sake of the class. Naturally we used CUDA exclusively.

I know for a fact that this happened at a lot of schools. I don't know if it's still happening since I'm not in that world anymore, but don't see why it would have stopped.


CUDA is extremely simple, the classes might as well be on rails. OpenCL is like impossible without graphics and/or CUDA/distributed computing/operating system experience.


I'm not sure if I really agree - the level of abstraction used for each is extremely similar. There's not really any "Graphics Pipeline Specifics" pollution in OpenCL or CUDA.

You can pretty much translate something like https://github.com/jcupitt/opencl-experiments/blob/master/Op... with string replace function names.


You get free access to hardware for courses if you teach CUDA courses.


No nvidia makes great tooling. Like as a startup if I had to pick a development tool AmD fails repeatedly while nvida tooling is like matlab level of usefulness.

Those companies have money to make ‘nice’ things which open source software doesn’t have the time to do.

For 100m you could probably make some pretty sweet clones if amd is hiring anybody to man that position.


I’m not sure if I’m in the minority here but Matlab levels of tooling is an insult. Their guides were always two or three steps before being useful. Just enough to make you think whatever they were selling would solve your problems but never enough when really building a solution.


Before visual studio code the laggyness of eclipse always pushed me to use notepad++. Which in turn pushed me away from Java.


> matlab level of usefulness

that's a little harsh :D


I don’t understand what you are disagreeing with.

Nvidia makes software that induces demand for their products. Sometimes that software is a tool, or a platform, or an ML model, or foundational research on algorithms.


>Those companies have money to make ‘nice’ things which open source software doesn’t have the time to do.

I would posit it's a lack of will rather than time.


Moreso lack of will to effectively mass organise

Thousands of OSS devs would be willing to devote serious time to it, but can’t/won’t run the gauntlet of starting such a ludicrously large project from scratch

It’s easy to contribute, difficult to be the one organising the contributions

A real “where do I even begin” problem


The biggest frameworks are still from other players though. Pytorch, tensorflow and jax aren't funded by Nvidia.


But they are built on top of nvidia tooling and you can use nvidia tools to do more extensive profiling than other players offer.


True, gotta love Nsight Systems and Compute.

That's the first hurdle of working with AMD GPUs, I have no idea what the GPU is actually doing because there is no quality profiler.


Is Omniperf/Omnitrace not very good? I haven't used it, but I have been using Nsight Systems recently and it looks comparable to me at a glance.


That’s ignoring a huge swath of software nvidia uses to push industry forwards (in the direction they want it to go).

Omniverse, Isaac, Metropolis, Rapids, etc.


Yeah but the frameworks use CUDA in their NVIDIA implementation , don’t they?


No way would any of those have any have bindings to backend libraries like cuDNN.


The success of CUDA is basically a dual effect of AMD devices being inefficient and bad for years, plus AMD having no answer to CUDA for a solid 7+ years while the foundations of GPGPU were being laid down.

Mindshare shifts slowly.


It's an acquisition, usually for patents/IP. There will be layoffs.


AMD is (according to their own statements) in the process of picking up a lot of software manpower. And wages in Finland are European tier, not US West Coast. Why lay them off?


Because nobody has been fired or fiscally punished for firing excessive number of people? :) People are notoriously bad at predicting potential positives, so firing people means nobody can prove that something wasn't created. In reverse it is possible to blame people for overhiring because that can be supported by hard numbers.


I guess their growth strategy was mostly about hiring every Finnish person, or living in Finland (and then in other countries) with a PhD in some quantitative topic and then market the "we have xx PhDs as a consultancy for all your projects". So you probably are right that not all these are needed anymore?


Why Finnish and not American or Persian?


Finnish company




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: