How is that For Flexibility?
As everyone is well conscious, the world is still going nuts trying to establish more, more recent and much better AI tools. Mainly by tossing ridiculous quantities of cash at the problem. Many of those billions go towards developing cheap or complimentary services that operate at a considerable loss. The tech giants that run them all are hoping to attract as lots of users as possible, so that they can catch the market, and become the dominant or just party that can use them. It is the traditional Silicon Valley playbook. Once dominance is reached, expect the enshittification to begin.
A likely method to earn back all that cash for developing these LLMs will be by tweaking their outputs to the taste of whoever pays one of the most. An example of what that such tweaking looks like is the rejection of DeepSeek's R1 to discuss what took place at Tiananmen Square in 1989. That a person is certainly politically inspired, but ad-funded services won't precisely be fun either. In the future, I totally expect to be able to have a frank and honest discussion about the Tiananmen events with an American AI representative, however the only one I can manage will have the persona of Father Christmas who, while holding a can of Coca-Cola, will sprinkle the recounting of the tragic events with a happy "Ho ho ho ... Didn't you know? The vacations are coming!"
Or maybe that is too improbable. Right now, dispite all that cash, the most popular service for code completion still has trouble working with a couple of easy words, regardless of them being present in every dictionary. There should be a bug in the "totally free speech", or something.
But there is hope. One of the tricks of an approaching gamer to shake up the market, is to undercut the incumbents by launching their model totally free, under a permissive license. This is what DeepSeek just made with their DeepSeek-R1. Google did it earlier with the Gemma models, as did Meta with Llama. We can download these designs ourselves and wiki.dulovic.tech run them on our own hardware. Even better, people can take these models and scrub the predispositions from them. And we can download those scrubbed designs and run those on our own hardware. And after that we can lastly have some genuinely useful LLMs.
That hardware can be an obstacle, however. There are two choices to select from if you wish to run an LLM locally. You can get a huge, effective video card from Nvidia, or you can buy an Apple. Either is costly. The main spec that shows how well an LLM will perform is the quantity of memory available. VRAM when it comes to GPU's, normal RAM in the case of Apples. Bigger is better here. More RAM indicates bigger designs, which will significantly improve the quality of the output. Personally, I 'd state one needs at least over 24GB to be able to run anything beneficial. That will fit a 32 billion criterion design with a little headroom to spare. Building, or purchasing, a workstation that is equipped to manage that can easily cost countless euros.
So what to do, shiapedia.1god.org if you don't have that quantity of cash to spare? You buy pre-owned! This is a feasible alternative, but as always, there is no such thing as a totally free lunch. Memory might be the main issue, but don't undervalue the significance of memory bandwidth and other specs. Older equipment will have lower performance on those aspects. But let's not worry excessive about that now. I am interested in constructing something that at least can run the LLMs in a functional method. Sure, the current Nvidia card may do it much faster, but the point is to be able to do it at all. Powerful online models can be great, however one should at least have the option to change to a regional one, if the circumstance requires it.
Below is my attempt to develop such a capable AI computer without investing too much. I ended up with a workstation with 48GB of VRAM that cost me around 1700 euros. I might have done it for less. For instance, it was not strictly essential to buy a brand new dummy GPU (see below), or I might have discovered somebody that would 3D print the cooling fan shroud for me, rather of shipping a ready-made one from a far country. I'll admit, I got a bit restless at the end when I learnt I needed to buy yet another part to make this work. For me, this was an appropriate tradeoff.
Hardware
This is the full cost breakdown:
And this is what it looked liked when it initially booted up with all the parts set up:
I'll give some context on the parts below, and after that, I'll run a couple of quick tests to get some numbers on the performance.
HP Z440 Workstation
The Z440 was a simple pick because I already owned it. This was the beginning point. About 2 years ago, I wanted a computer system that might act as a host for my virtual makers. The Z440 has a Xeon processor with 12 cores, and this one sports 128GB of RAM. Many threads and users.atw.hu a lot of memory, that ought to work for hosting VMs. I bought it secondhand and after that switched the 512GB disk drive for a 6TB one to keep those virtual devices. 6TB is not needed for running LLMs, and therefore I did not include it in the breakdown. But if you prepare to collect lots of designs, 512GB may not suffice.
I have pertained to like this workstation. It feels all really solid, and I have not had any problems with it. At least, up until I started this project. It turns out that HP does not like competitors, and I came across some troubles when swapping components.
2 x NVIDIA Tesla P40
This is the magic component. GPUs are expensive. But, similar to the HP Z440, often one can find older devices, that used to be top of the line and is still really capable, pre-owned, for fairly little cash. These Teslas were suggested to run in server farms, for things like 3D making and other graphic processing. They come equipped with 24GB of VRAM. Nice. They suit a PCI-Express 3.0 x16 slot. The Z440 has 2 of those, so we purchase two. Now we have 48GB of VRAM. Double nice.
The catch is the part about that they were implied for servers. They will work great in the PCIe slots of a regular workstation, however in servers the cooling is managed differently. Beefy GPUs consume a lot of power and can run very hot. That is the reason consumer GPUs constantly come geared up with huge fans. The cards need to take care of their own cooling. The Teslas, nevertheless, have no fans whatsoever. They get just as hot, however anticipate the server to provide a constant flow of air to cool them. The enclosure of the card is somewhat formed like a pipeline, and you have 2 choices: blow in air from one side or blow it in from the other side. How is that for versatility? You absolutely must blow some air into it, however, or you will harm it as quickly as you put it to work.
The option is simple: just mount a fan on one end of the pipe. And certainly, it appears an entire cottage industry has actually grown of individuals that sell 3D-printed shrouds that hold a basic 60mm fan in simply the right location. The problem is, the cards themselves are already rather large, and it is challenging to find a setup that fits 2 cards and two fan mounts in the computer system case. The seller who offered me my two Teslas was kind sufficient to consist of two fans with shrouds, but there was no chance I might fit all of those into the case. So what do we do? We buy more parts.
NZXT C850 Gold
This is where things got frustrating. The HP Z440 had a 700 Watt PSU, which might have sufficed. But I wasn't sure, and I required to buy a brand-new PSU anyhow because it did not have the ideal connectors to power the Teslas. Using this convenient site, I deduced that 850 Watt would be adequate, and I bought the NZXT C850. It is a modular PSU, meaning that you just need to plug in the cable televisions that you in fact require. It featured a cool bag to keep the extra cable televisions. One day, I may provide it an excellent cleaning and use it as a toiletry bag.
Unfortunately, HP does not like things that are not HP, so they made it tough to swap the PSU. It does not fit physically, and they likewise altered the main board and CPU ports. All PSU's I have actually ever seen in my life are rectangular boxes. The HP PSU likewise is a rectangle-shaped box, however with a cutout, making certain that none of the normal PSUs will fit. For no technical reason at all. This is just to tinker you.
The mounting was ultimately resolved by utilizing 2 random holes in the grill that I in some way managed to line up with the screw holes on the NZXT. It sort of hangs stable now, and I feel lucky that this worked. I have actually seen Youtube videos where people resorted to double-sided tape.
The port needed ... another purchase.
Not cool HP.
Gainward GT 1030
There is another problem with utilizing server GPUs in this customer workstation. The Teslas are meant to crunch numbers, not to play computer game with. Consequently, they do not have any ports to link a display to. The BIOS of the HP Z440 does not like this. It refuses to boot if there is no method to output a video signal. This computer will run headless, however we have no other option. We need to get a 3rd video card, that we do not to intent to use ever, simply to keep the BIOS delighted.
This can be the most scrappy card that you can discover, naturally, but there is a requirement: we should make it fit on the main board. The Teslas are large and fill the two PCIe 3.0 x16 slots. The only slots left that can physically hold a card are one PCIe x4 slot and one PCIe x8 slot. See this website for some background on what those names mean. One can not buy any x8 card, though, because typically even when a GPU is marketed as x8, the real connector on it might be just as broad as an x16. Electronically it is an x8, physically it is an x16. That will not work on this main board, we actually require the little connector.
Nvidia Tesla Cooling Fan Kit
As said, the challenge is to discover a fan shroud that fits in the case. After some searching, I found this set on Ebay a purchased 2 of them. They came provided total with a 40mm fan, and all of it fits perfectly.
Be cautioned that they make a dreadful great deal of sound. You do not desire to keep a computer with these fans under your desk.
To watch on the temperature, I worked up this fast script and put it in a cron job. It occasionally reads out the temperature level on the GPUs and sends out that to my Homeassistant server:
In Homeassistant I included a chart to the control panel that shows the worths gradually:
As one can see, the fans were loud, but not especially efficient. 90 degrees is far too hot. I searched the web for an affordable ceiling however could not discover anything specific. The documentation on the Nvidia site discusses a temperature level of 47 degrees Celsius. But, what they mean by that is the temperature of the ambient air surrounding the GPU, not the determined worth on the chip. You understand, the number that actually is reported. Thanks, Nvidia. That was practical.
After some additional browsing and reading the viewpoints of my fellow web people, my guess is that things will be great, supplied that we keep it in the lower 70s. But do not quote me on that.
My first attempt to correct the circumstance was by setting a maximum to the power intake of the GPUs. According to this Reddit thread, one can reduce the power intake of the cards by 45% at the expense of just 15% of the efficiency. I tried it and ... did not see any difference at all. I wasn't sure about the drop in performance, having only a couple of minutes of experience with this configuration at that point, however the temperature attributes were certainly unchanged.
And after that a light bulb flashed on in my head. You see, prior to the GPU fans, there is a fan in the HP Z440 case. In the photo above, it remains in the ideal corner, inside the black box. This is a fan that sucks air into the case, and I figured this would work in tandem with the GPU fans that blow air into the Teslas. But this case fan was not spinning at all, due to the fact that the remainder of the computer did not require any cooling. Checking out the BIOS, I found a setting for the minimum idle speed of the case fans. It varied from 0 to 6 stars and was currently set to 0. Putting it at a higher setting did wonders for the temperature level. It also made more sound.
I'll reluctantly admit that the 3rd video card was handy when adjusting the BIOS setting.
MODDIY Main Power Adaptor Cable and Akasa Multifan Adaptor
Fortunately, sometimes things simply work. These 2 products were plug and play. The MODDIY adaptor cable television connected the PSU to the main board and CPU power sockets.
I used the Akasa to power the GPU fans from a 4-pin Molex. It has the good function that it can power two fans with 12V and two with 5V. The latter certainly reduces the speed and thus the cooling power of the fan. But it likewise minimizes noise. Fiddling a bit with this and the case fan setting, I found an acceptable tradeoff between sound and temperature level. In the meantime at least. Maybe I will need to revisit this in the summertime.
Some numbers
Inference speed. I collected these numbers by running ollama with the-- verbose flag and asking it five times to compose a story and averaging the outcome:
Performancewise, ollama is set up with:
All designs have the default quantization that ollama will pull for you if you don't specify anything.
Another essential finding: Terry is by far the most popular name for a tortoise, followed by Turbo and Toby. Harry is a favorite for hares. All LLMs are caring alliteration.
Power consumption
Over the days I watched on the power consumption of the workstation:
Note that these numbers were taken with the 140W power cap active.
As one can see, there is another tradeoff to be made. Keeping the design on the card enhances latency, but consumes more power. My current setup is to have 2 models filled, one for coding, the other for larsaluarna.se generic text processing, and keep them on the GPU for as much as an hour after last usage.
After all that, am I happy that I started this job? Yes, I think I am.
I invested a bit more cash than prepared, however I got what I wanted: a way of in your area running medium-sized models, completely under my own control.
It was a good option to start with the workstation I currently owned, and see how far I could feature that. If I had actually begun with a new maker from scratch, it certainly would have cost me more. It would have taken me much longer too, as there would have been a lot more choices to pick from. I would also have been really tempted to follow the buzz and buy the current and biggest of whatever. New and shiny toys are fun. But if I purchase something brand-new, I desire it to last for years. Confidently forecasting where AI will enter 5 years time is difficult right now, so having a less expensive maker, that will last at least some while, feels acceptable to me.
I want you all the best on your own AI journey. I'll report back if I find something new or interesting.