Framework 16 and Deep Learning

I’m really thrilled by this laptop and I’ve been waiting since this winter, I’m the lucky owner of a pre-order for batch 13, however…

However as the date comes closer, I’m starting to have growing doubts, if this laptop is the correct choice for me, specifically, for one specific issue which, I need CUDA to work do do research into Deep Learning.

Why I can’t use mROC
Because most of the time, I base my work off some other github repo and especially in recent years there have been some advancement in performance due to hardware-aware implementation that leverage the inner workings of nvidia gpus ( fast attention, mamba, s4, etc ) making the code highly dependent on having CUDA libs to compile some modules.

Why not using an eGPU
Makes the laptop not really handy to transport, and also adds an additional layer of possible incompatibilities to the code, which often times already have fucked up dependencies, to the point that you either use an Ubuntu LTS or you will be spending days and days fighting with the dependencies, to just be able to run successfully the main.py

There is no nvidia GPU available, and that’s ok for now, I tought I might get it later, but, the more I search, the more it seams that there are zero plans about it and giving the nvidia company policies, I’m starting to suspect there never will be.

Does anyone have been facing similar considerations when thinking of using the framework 16 mainly for Deep Learning? Are there any news about having an internal nvidia GPU in the future? any 3rd party producer, perhaps?

Thanks <3

1 Like

There’s currently no news about if/when an nVidia dGPU will be made available. As someone with a Framework 16, if that’s a must-have feature for you I would recommend holding off.

2 Likes

Even if framework wanted to (which I assume they at least kinda do) it is very unlikely nvidia would even talk to them, especially if it’s about replaceable gpus in laptops which they seem to block at every turn and are quite vindictive to those trying to get around it.

Imo the only realistic option is grey market remanufactured ones and not selling to the chinese market puts a bit of a damper on that (especially since there is more money elsewhere for ai capable cards right now, especially in china).

Why not run your workloads on a remote machine with whatever gpus you want on them?

For the price difference between equivalent desktop and mobile gpus you can easily afford to build a good enough system around a desktop card and you won’t have to carry it around with you at all.

3 Likes

Well, this is my current setup, I run experiments on my desktop computer remotely.
However, if that would be also my future setup, use the laptop just as thin client, i can just get a super cheap chromebook, isn’t it?
Also, I would like to be able to run simple experiments without the need of using my desktop, also, this would mean that I can keep experimenting while my desktop is performing heavier tasks.

1 Like

You can yes.

In that case you’ll either have to wean off of cuda, figure out if zluda or something like that works or get something with an nvidia gpu.

Or get a slightly bigger desktop card that can do your experiments and the heavier tasks at the same time, or hell a smaller second desktop card.

Or Simply get a tuxedo with a 4070?

That was contained in option 2 yeah.

1 Like

I will add that my brief experience testing AI applications on eGPU with the FW 16 was basically seemless, it more or less just worked. It’s much simpler when there’s no video going back and forth.

1 Like

Yea the unfortunate part about likely never being able to have an Nvidia GPU is another reason I am considering just selling my Framework 16 before I even build it.
I bought the AMD GPU version but I use my laptop for testing things with Nvidia GPU’s since all my desktops have AMD GPU’s. So if I keep this; then it means I need another system to test things with Nvidia GPU’s since I write software.

1 Like

I ordered my FW16 for AI, even if it does not have an Nvidia GPU. These are my points:

  • I am mainly on the development side, so absolute performance is not my priority.
  • I ordered my FW16 with no discrete GPU. The reason is that I do not need it now, since I am still in a full development phase. When I will be in a more advanced stage, I will get the latest discrete GPU available.
  • eGPUs have pros and cons. With a bit more money you can build a GPU server which is more flexible (e.g. can be used remotely).
  • I NEVER use platform specific low level languages (e.g. CUDA), because they tie you to a vendor. I use higher level libraries (e.g. math libraries) that rely on, e.g, CUDA or SYCL or whatever (compile time choice).
  • For anybody interested in simulating the brain, remember that it is a very sparse system (otherwise it would catch fire :wink: ), so a CPU could still be a good option…
5 Likes

I just set mine up so I haven’t had a chance to train a model on it yet (if you haven’t already cancelled your order I can give it a try in the next few days).

I may find out that the AMD backends for JAX and pytorch are too immature but I think the path to breaking the CUDA dependence looks pretty clear to me.

I absolutely agree with you, but … What’s your plan to run code dependent on, let’s say, flash attention?

Think about what you are asking, if you want a Workstation/Server laptop then buy a Workstation/Laptop from Dell/HP/?? that has the hardware you want already packaged. You will be spending a LOT more just for a portable machine.

You will likely NEVER get the same order of magnitude of performance from a laptop vs. a true workstation. They have entirely different design philosophies.

Since you are trying to do “Deep Learning” which translates to using a lot of computing resources your most efficient approach is to have a Workstation that can smoke anything your laptop could ever do. Still want to run other experiments? Remote into another older workstation and run that task. The divide and conquer approach is going to cost you a lot less in the long run in both time and money. This is how high performance computing has done it forever.

Get the Framework for the modularity/portability and leave the hardcoded CUDA work to the machines designed to run them.

NVIDIA gets to play by their own rules because the position they have put themselves into. They make a great product, though they make everyone pay dearly to use it.

Well, one thing is “have the same computational power”, which of course, is not expectable. One thing is not even being able to compile/run the code because I don’t have the necessary libraries.

I just want to be able to cover my needs with my laptop after spending 2000$ on it, is it really so unreasonable?

Given this, I’m still the biggest fan of framework laptop, and I’m really struggling with the decision of cancelling my per-order.

That highly depends on the needs.

If you absolutely need an nvidia chip in your laptop you’ll probably need to.

Nvidia just doesn’t like us having nice things XD

Sorry for the delay, been a busy week at work. There is an implementation in Triton (Fused Attention — Triton documentation ) and AMD has a Triton backend (Developing Triton Kernels on AMD GPUs — ROCm Blogs ) so that’s the long answer and the short answer is: Triton (or pallas for JAX).

1 Like

I was sure that nvidia gpu support will be available by now in Framework laptops. Showstopper for me as I need it for CAD/BIM work (AI would be nice as well).

1 Like

You can use it through a eGPU dongle.

Doesn’t sound transportable, it’s a laptop

1 Like

There are a few eGPUs which are smaller that can be transported very easily.

This is one of them.