As everyone is well conscious, the world is still going nuts trying to develop more, oke.zone newer and much better AI tools. Mainly by throwing ridiculous quantities of cash at the problem. Much of those billions go towards constructing cheap or free services that run at a substantial loss. The tech giants that run them all are wishing to attract as many users as possible, so that they can catch the marketplace, and end up being the dominant or only party that can use them. It is the classic Silicon Valley playbook. Once dominance is reached, anticipate the enshittification to begin.
A likely way to make back all that cash for developing these LLMs will be by tweaking their outputs to the preference of whoever pays the many. 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 motivated, however ad-funded services will not exactly be enjoyable either. In the future, I completely expect to be able to have a frank and truthful conversation about the Tiananmen occasions with an American AI agent, but the just one I can afford will have presumed the persona of Father Christmas who, while holding a can of Coca-Cola, will sprinkle the recounting of the awful occasions with a happy "Ho ho ho ... Didn't you know? The holidays are coming!"
Or perhaps that is too far-fetched. Right now, dispite all that cash, the most popular service for code completion still has trouble working with a number of basic words, in spite of them existing in every dictionary. There need to be a bug in the "totally free speech", or something.
But there is hope. One of the tricks of an approaching player to shock the market, is to damage the incumbents by launching their design free of charge, under a permissive license. This is what DeepSeek simply 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 run them on our own hardware. Even better, individuals 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 then we can lastly have some genuinely useful LLMs.
That hardware can be an obstacle, however. There are two choices to select from if you want to run an LLM in your area. You can get a huge, powerful video card from Nvidia, or you can purchase an Apple. Either is pricey. The main specification that shows how well an LLM will carry out is the quantity of memory available. VRAM in the case of GPU's, normal RAM in the case of Apples. Bigger is much better here. More RAM means larger designs, elearnportal.science which will drastically improve the quality of the output. Personally, I 'd say one needs at least over 24GB to be able to run anything helpful. That will fit a 32 billion parameter model with a little headroom to spare. Building, or buying, a workstation that is equipped to manage that can quickly cost thousands of euros.
So what to do, if you do not have that quantity of money to spare? You buy second-hand! This is a viable alternative, but as constantly, there is no such thing as a complimentary lunch. Memory might be the main issue, but do not underestimate the value of memory bandwidth and other specs. Older devices will have lower performance on those elements. But let's not worry excessive about that now. I have an interest in developing something that a minimum of can run the LLMs in a usable way. Sure, the latest Nvidia card may do it faster, however the point is to be able to do it at all. Powerful online designs can be great, but one must at the really least have the option to change to a regional one, if the situation calls for it.
Below is my effort to build such a capable AI computer system without investing excessive. I ended up with a workstation with 48GB of VRAM that cost me around 1700 euros. I could have done it for less. For example, it was not strictly essential to purchase a brand new dummy GPU (see listed below), or I might have discovered somebody that would 3D print the cooling fan shroud for me, instead of delivering a ready-made one from a faraway nation. I'll confess, I got a bit impatient at the end when I discovered I needed to purchase 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 appeared like when it initially booted with all the parts set up:
I'll provide some context on the parts listed below, and after that, I'll run a few quick tests to get some numbers on the efficiency.
HP Z440 Workstation
The Z440 was an easy choice since I already owned it. This was the starting point. About 2 years back, I wanted a computer that might act as a host for my virtual devices. The Z440 has a Xeon processor with 12 cores, and this one sports 128GB of RAM. Many threads and a great deal of memory, that must work for hosting VMs. I purchased it previously owned and then switched the 512GB hard disk drive for a 6TB one to store those virtual devices. 6TB is not needed for running LLMs, and therefore I did not include it in the breakdown. But if you plan to gather numerous designs, 512GB might not suffice.
I have pertained to like this workstation. It feels all really solid, and I have not had any issues with it. A minimum of, till I started this task. 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 ingredient. GPUs are costly. But, similar to the HP Z440, often one can find older equipment, that used to be leading of the line and is still very capable, pre-owned, for fairly little cash. These Teslas were suggested to run in server farms, for things like 3D rendering and other graphic processing. They come geared up with 24GB of VRAM. Nice. They fit in a PCI-Express 3.0 x16 slot. The Z440 has 2 of those, so we purchase two. Now we have 48GB of VRAM. Double good.
The catch is the part about that they were meant for servers. They will work fine in the PCIe slots of a normal workstation, however in servers the cooling is handled differently. Beefy GPUs take in a lot of power and can run really hot. That is the reason consumer GPUs constantly come geared up with huge fans. The cards need to look after their own cooling. The Teslas, nevertheless, have no fans whatsoever. They get simply as hot, however expect the server to supply a stable flow of air to cool them. The enclosure of the card is somewhat formed like a pipeline, and you have two options: blow in air from one side or blow it in from the opposite. How is that for flexibility? You absolutely need to blow some air into it, however, or you will harm it as soon as you put it to work.
The service is easy: just install a fan on one end of the pipeline. And certainly, it seems an entire home industry has grown of individuals that offer 3D-printed shrouds that hold a basic 60mm fan in just the right place. The issue is, the cards themselves are currently rather bulky, and it is challenging to discover a setup that fits two cards and 2 fan installs in the computer system case. The seller who sold me my two Teslas was kind enough to include 2 fans with shrouds, however there was no other way I could fit all of those into the case. So what do we do? We purchase more parts.
NZXT C850 Gold
This is where things got annoying. The HP Z440 had a 700 Watt PSU, which may have been enough. But I wasn't sure, and I needed to purchase a brand-new PSU anyhow because it did not have the ideal adapters to power the Teslas. Using this useful site, I deduced that 850 Watt would be enough, and I bought the NZXT C850. It is a modular PSU, implying that you only require to plug in the cables that you actually require. It featured a neat bag to save the extra cables. One day, I might offer it an excellent cleaning and utilize it as a toiletry bag.
Unfortunately, HP does not like things that are not HP, so they made it hard to swap the PSU. It does not fit physically, and they likewise changed the main board and CPU adapters. All PSU's I have actually ever seen in my life are rectangular boxes. The HP PSU also is a rectangular box, however with a cutout, making certain that none of the typical PSUs will fit. For no technical factor at all. This is just to tinker you.
The mounting was by utilizing 2 random holes in the grill that I in some way handled to align with the screw holes on the NZXT. It sort of hangs steady now, and I feel lucky that this worked. I have seen Youtube videos where individuals turned to double-sided tape.
The adapter required ... another purchase.
Not cool HP.
Gainward GT 1030
There is another problem with using server GPUs in this customer workstation. The Teslas are meant to crunch numbers, yewiki.org not to play computer game with. Consequently, they do not have any ports to link a monitor to. The BIOS of the HP Z440 does not like this. It refuses to boot if there is no other way to output a video signal. This computer system will run headless, however we have no other option. We need to get a third video card, that we don't to intent to utilize ever, just to keep the BIOS delighted.
This can be the most scrappy card that you can discover, naturally, however there is a requirement: we should make it fit on the main board. The Teslas are bulky and fill the 2 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 site for some background on what those names suggest. One can not buy any x8 card, though, because often even when a GPU is advertised as x8, the real port on it might be just as broad as an x16. Electronically it is an x8, physically it is an x16. That won't work on this main board, we really need the small connector.
Nvidia Tesla Cooling Fan Kit
As said, the challenge is to discover a fan shroud that fits in the case. After some browsing, I discovered this set on Ebay a purchased two of them. They came delivered complete with a 40mm fan, and all of it fits perfectly.
Be cautioned that they make a horrible lot of noise. You do not wish to keep a computer system with these fans under your desk.
To watch on the temperature level, I worked up this fast script and put it in a cron job. It regularly reads out the temperature level on the GPUs and sends out that to my Homeassistant server:
In Homeassistant I added a graph to the control panel that displays the worths over time:
As one can see, the fans were loud, however not particularly reliable. 90 degrees is far too hot. I browsed the web for a sensible upper limitation but could not find anything particular. The documentation on the Nvidia website discusses a temperature level of 47 degrees Celsius. But, what they suggest by that is the temperature of the ambient air surrounding the GPU, not the measured value on the chip. You know, the number that in fact is reported. Thanks, Nvidia. That was handy.
After some more searching and checking out the opinions of my fellow internet citizens, my guess is that things will be fine, provided that we keep it in the lower 70s. But don't estimate me on that.
My first attempt to remedy the situation was by setting a maximum to the power consumption of the GPUs. According to this Reddit thread, one can lower the power usage of the cards by 45% at the cost of only 15% of the performance. I tried it and ... did not discover any distinction at all. I wasn't sure about the drop in efficiency, having only a couple of minutes of experience with this configuration at that point, but the temperature level qualities were certainly the same.
And then 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 picture above, it remains in the right corner, inside the black box. This is a fan that draws 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, since the remainder of the computer did not require any cooling. Looking into the BIOS, I found a setting for the minimum idle speed of the case fans. It ranged 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 unwillingly admit that the 3rd video card was useful when changing the BIOS setting.
MODDIY Main Power Adaptor Cable and Akasa Multifan Adaptor
Fortunately, sometimes things just work. These two items were plug and play. The MODDIY adaptor cable television linked the PSU to the main board and CPU power sockets.
I utilized the Akasa to power the GPU fans from a 4-pin Molex. It has the good feature that it can power 2 fans with 12V and two with 5V. The latter certainly minimizes the speed and hence the cooling power of the fan. But it also decreases sound. Fiddling a bit with this and the case fan setting, I found an acceptable tradeoff between sound and temperature level. For now at least. Maybe I will need to revisit this in the summer season.
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 result:
Performancewise, ollama is configured with:
All designs have the default quantization that ollama will pull for you if you do not specify anything.
Another essential finding: Terry is without a doubt the most popular name for a tortoise, followed by Turbo and Toby. Harry is a preferred for hares. All LLMs are caring alliteration.
Power consumption
Over the days I kept an eye 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 model on the card enhances latency, however consumes more power. My existing setup is to have 2 designs packed, one for coding, the other for generic text processing, and keep them on the GPU for up to an hour after last use.
After all that, am I delighted that I started this task? Yes, I think I am.
I invested a bit more cash than planned, but I got what I desired: a way of locally running medium-sized designs, totally under my own control.
It was a good choice to begin with the workstation I already owned, and see how far I could feature that. If I had actually started with a brand-new machine from scratch, it certainly would have cost me more. It would have taken me a lot longer too, as there would have been numerous more options to select from. I would also have been extremely tempted to follow the hype and buy the current and greatest of whatever. New and glossy toys are fun. But if I buy something brand-new, I want it to last for many years. Confidently forecasting where AI will go in 5 years time is difficult right now, so having a less expensive machine, that will last at least some while, feels acceptable to me.
I wish you all the best on your own AI journey. I'll report back if I discover something brand-new or interesting.
1
How is that For Flexibility?
Concetta Rayford edited this page 2 months ago