3 ms·
Aks HN: Can additional processor core be emulated on SSD for more compute power?
I am thinking how to buy a ThinkPad on a budget and it may come with only 2 i5 processor cores, but with 480GB or 980GB SSDs. Is 2 core (with 8GB RAM) enough for beginner-to-intermediate programming?
(How) Can an additional processor core be emulated on a free SSD space if more computational power is needed (similar to a swap partition for RAM)?
When I was curious about defi, I remember there was a cryptocurrency ~chia, which used hard disks for computing/hashing, but this wears them out quicker. I'd like to have some type of CPU core emulation on an SSD to turn on temporarily if using some compute intensive ML etc (given that compute time may not be of top priority).
- PaulHoule 4y agoIn general no, but specific cases yes. See https://en.wikipedia.org/wiki/Rainbow_table https://en.wikipedia.org/wiki/Rainbow_table
- layer8 4y ago> Is 2 core (with 8GB RAM) enough for beginner-to-intermediate programming? Yes, that’s perfectly adequate. > Can an additional processor core be emulated on a free SSD space if more computational power is needed (similar to a swap partition for RAM)? No, that’s not really possible. You’ve misunderstood Chia, they don’t perform actual computation on HDDs.
- amts 4y ago> really Can't a CPU be emulated on anything having a representation of 1 bit or 0 bit?
- layer8 4y agoYou need a thing that actually does something with those zeros and ones. Like, process them. That’s called a processor. A CPU. Zeros and ones by themselves don’t do anything.
- amts 4y agoDo you mean that any time when, for example, some electronic circuits CAD software simulates the working of a logic "NOT" gate, it needs to actually access this logic gate circuit instance in the CPU?
- layer8 4y agoNo, but the data (zero and ones) representing the gates must be processed by the CPU for the emulation to take place. It’s the CPU that performs the emulation by processing that data. And the emulation is much slower than the actual electronic circuit. So if you want to emulate a CPU, you still need a real CPU that does the emulation, and the emulation will (usually) be slower than actually running the emulated CPU for real. For example, you can emulate an Intel CPU on an Apple CPU (or vice versa), but that emulation may be slower than if you had a real Intel CPU (or real Apple CPU) in the first place. In any case, you can’t emulate CPUs out of thin air, i.e. just with storage.
- amts 4y agoOf course it would be slower, but suppose time is not a priority while performing computations. CPU could start and stop the emulation, perform some memory management, but not the computation itself. Like, some type of linked list on an SSD, it would take a bit from an input cell, which is linked to a logical "NOT" cell, which will reverse this bit to zero (which is easy to just assume an opposite value), and send the result to the next linked "output" cell.
- navjack27 4y agoThe SSD isn't going to miraculously sprout a way to perform calculations on itself without something performing calculations on it itself. What is the "it" that you keep talking about that is taking a bit from an input cell? I mean okay, try to imagine that you could store some magical sequence of bits to a SSD that would signal to the SSD itself that it should be performing some sort of computation on this range of bits by just shifting them around. Now imagine how many bits in how many permutations are stored on all of the ssds in the world. Now ask yourself why this hasn't just miraculously happened.
- fulafel 4y agoEmulating a processor core doesn't normally take a lot of memory, but involves a lot of computation, so it's faster to do it on your CPU without involving the SSD. I guess you may be asking if there is a space/time tradeoff that could be made. I guess you could imagine caching stretches of execution which would have the exact inputs and CPU state, a bit like the RR tool does... But would still be hard to overcome the SSD overhead in addition to the CPU running the emulation and caching logic and performing all the required SSD I/O. Interesting idea still.
- navjack27 4y agoOkay you're bringing up a whole lot of things here. To address your main question: no. Now to address the rest of what you say: What's your budget for a ThinkPad? Why do you want a ThinkPad in particular? Saying an i5 processor is meaningless. What model? Like i5-10210U. That seems like a really big SSD for a laptop that would be of the era to still only have two cores and 8 gigs of RAM. Yes that could be enough power for beginner to intermediate programming. Additional processor cores can't be emulated on storage. The only reason storage could be used as swap is because there is no difference between storage and RAM except one is volatile and the other one isn't. A processor isn't storage although it has storage on it in registers and cache. You're getting way ahead of yourself with the third paragraph there and I suggest that you go and relearn the fundamentals of how computers work before you even approach any of this next stuff.
- amts 4y ago> What's your budget for a ThinkPad? Maybe 300-400 euros, but it's currently potentially diminishing. > Why do you want a ThinkPad in particular? In [1] I was advised to aquire used T and X series Thinkpads instead of Dell. And I googled, with specific attention to display features (PWM) and build quality, and it seems that Thinkpads seem to provide similar or better overall quality vs more expensive Dell XPS and others. Potential CPU is i5-6300U + 8 GB RAM and 512 or 1Tb SSD (updated/refurbrished Lenovo T470 thinkpad with 14" display and 2 year waranty (the local seller I may buy from is providing 2 year warranty on used thinkpads and 0.5 year on battery, which seems safer than on ebay)). [1] https://news.ycombinator.com/item?id=33607054 https://news.ycombinator.com/item?id=33607054