Hacker Newsnew | past | comments | ask | show | jobs | submit | more Onavo's commentslogin

Also ghostty


Convolution?


What about it?


Assuming you are asking this because of the deep learning/ChatGPT hype, the first question you should ask yourself is, do you really need to? The skills needed for CUDA are completely unrelated to building machine learning models. It's like learning to make a TLS library so you can get a full stack web development job. The skills are completely orthogonal. CUDA belongs to the domain of game developers, graphics people, high performance computing and computer engineers (hardware). From the point of view of machine learning development and research, it's nothing more than an implementation detail.

Make sure you are very clear on what you want. Most HR departments cast a wide net (it's like how every junior role requires "3-5 years of experience" when in reality they don't really care). Similarly when hiring, most companies pray for the unicorn developer who can understand the entire stack from the GPU to the end user product domain when the day to day is mostly in Python.



I'm going with Pangolin, small hosted VPS on Hetzner, to front my Homelab. Takes away much of the complications of serving securely directly from the home LAN.


> free and power efficient

Free yes. Power efficient no. Unless you switch your laptops every two years, it's unlikely to be more efficient.


My laptop from 2011 idles at 8W, with two SATA SSDs. I have an Intel 10th-gen mini PC that idles at 5W with one SSD. 3W is not groundbreaking, but for a computer you paid $0, it would take many years to offset the $180 paid on a mini PC.


Say power costs 25¢/kWh. That's $2 per year per watt of standby power. Adjust to your local prices.

So that'd take 30 years to pay back. Or, with discounted cash flow applied... Probably never.


> My laptop from 2011 idles at 8W, with two SATA SSDs.

some benchmarks show the Raspberry Pi 4 idling below 3W and consuming a tad over 6W under sustained high load.

Power consumption is not an argument that's in favor of old laptops.


> tad over 6W

That is the key. The RPi works for idling, but anything else gets throttled pretty bad. I used to self host on the RPi, but it was just not enough[1]. Laptops/mini-PCs will have a much better burstable-to-idle power ratio (6/3W vs 35/8W).

1: https://www.kassner.com.br/en/2022/03/16/update-to-my-zfs-ba...


> That is the key. The RPi works for idling, but anything else gets throttled pretty bad.

I don't have a dog in this race, but I recall that RPi's throttling issues when subjected to high loads were actually thermal throttling. Meaning, you picked up a naked board and started blasting benchmarks until it overheated.

You cannot make sweeping statements about RPi's throttling while leaving out the root cause.


amd64 processors will have lots of hardware acceleration built in. I couldn’t get past 20MB/s over SSH on the Pi4, vs 80MB/s on my i3. So while they can show similar geekbench results, the experience of using the Pi is a bit more frustrating than on paper.


RPi is amazing for IOT tasks cuz it’s pretty portable but not for running general purpose server tasks, you’d get better performance per watt with used gear


Why doesn't Hong Kong fix their real estate problem?


Go also statically links all dependencies and reinvents all the wheels usually provided by the system land. Cross compilation is trivial. It is unrivaled when it comes to deployment simplicity.


Rust does the same.


Rust can cross-compile, yes, but is not as seamless. For example, Rust can not cross-compile Windows binaries from Linux without external support like MinGW.

Go can cross-compile from Linux to Windows, Darwin and FreeBSD without requiring any external tooling.


Yea and at least Go provides a giant Google engineering tier quality standard library so reinventing the wheel here doesn't hurt so much productivity.

Meanwhile Rust requires a pile of variable quality community driven crates to do basic things.


Both languages have enormous cargo-culting issues when you try to do anything that isn't fizzbuzz. The bigger difference that I'd expect people to identify is that Rust generates freestanding binaries where Go software requires a carefully-set runtime. There are pros and cons to each approach.


None of them generate true freestanding executables by default. Both Go and Rust require glibc.

And Go's runtime is built-in by default. Unlike Java so there's nothing to "carefully set".


By default no for Go, but it's much easier to get their then Rust.

In Go you run this to build:

  CGO_ENABLED=0 GOOS=linux go build -a -ldflags '-extldflags "-static"' .

I do not actually know how you get this done in Rust (you do something with musl and a bunch of other stuff).


By that definition, I cannot name a single high-level programming language that generates freestanding binaries.


Many of them can, including Rust and Go. Just not with default arguments. You need to pass linking arguments.

This is not done by default to reduce binary sizes.


Probably Ising models, phase transitions, condense matter stuff all to help make a bigger boom.


Well, I am not sure how you expect redneck prepper types to pick up on enough RF theory to manufacture homemade metamaterials.


We aren't all rednecks. Or maybe we kind of are but some of us have engineering degrees.


a lot of people think if you get your hands dirtied you're a redneck... I guess I'm a redneck.


The issues it has around circular data structures is almost, though not quite, as bad as rust.


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

Search: