9 ms·
It'll be exciting if the clock cycles keep stalling like they've basically been doing in the last few years and we end up having to learn and do things at this
by natly 4y ago
It'll be exciting if the clock cycles keep stalling like they've basically been doing in the last few years and we end up having to learn and do things at this level again to squeeze out what we want happen out of a long-term fixed compute budget.
- topspin 4y agoDoing things at this level is what FPGAs are used for. Processing many GiB per second of samples through complex chains of signal processing logic, for example.
- wly_cdgr 4y agoGood time to pivot towards embedded and systems level programming
- natly 4y agoProbably a decade or two premature but can't hurt to hedge the bets (there's definitely opportunity to make software that makes fpga and asic compilation from higher level languages easier though - only reason it's not happening is the high talent required and low amount of people at that intersection, there's no way verilog/vhdl is the global minima).
- cercatrova 4y agoI'm going to sound like one of those fanboys but Rust really is a breath of fresh air. Lots of people now are starting to make actually fast and performant applications due to the ergonomics of the language being more high level than something like C or C++. It's actually my favorite ML type language, I've use OCaml to a large extent before but with Rust, the DX is still pretty nice, even if you have to contend with the borrow checker.
- lupire 4y agoHow is rust higher level than C++? It has powerful memory safety features, but that's not what I'd call "high level".
- Koshkin 4y agoIndeed, my impression has been that C++ is as high-level as you want it to be.
- codedokode 4y agoMy impression of C++ is that you have to write multiple constructors before you can implement any logic.
- hoseja 4y agoThat's ... not even wrong. Or severely misguided. It's like saying "My impression of cooking is that you have to make several hotdogs before you can start frying things."
- Jensson 4y agoThe level of a language depends on what idiomatic code looks like. Idiomatic C is lower level than idiomatic C++ which is lower level than idiomatic Rust. Just because you can write things at a lower level doesn't mean that people do so, or even are allowed to do so. Most places where you write C++ you aren't allowed to write it like C, and similarly most places where you write Rust doesn't allow you to write large unsafe blocks.
- newobj 4y agoPattern matching is arguably one higher level feature/capability.
- teleforce 4y agoI think D will be much better suited for embedded system because you can even seamlessly import C functions into D program [1],[2]. Since C is the de facto language for embedded system this new capability is a game changer. Added to the fact that D language designers try to make programming D similar to programming Python and D is by default has GC, it'll make it easier for those coming from application software developer background to program embedded system with D. [1]Add ability to import modules to ImportC: https://dlang.org/changelog/2.099.0.html#__import https://dlang.org/changelog/2.099.0.html#__import [2]Great Programming with ImportC: https://youtu.be/c3kJoFCzA-0 https://youtu.be/c3kJoFCzA-0
- kevin_thibedeau 4y agoThis is part of why Intel acquired Altera. On the other end of the spectrum, some of the latest AVR families have configurable glue logic akin to a tiny PLD.
- zrail 4y agoIn the same vein, the Raspberry Pi RP2040 has what they call Programmable IO modules which are tiny cores that can run small state machines doing whatever you want, separate from the main ARM cores.
- sk0g 4y agoYeah, doing my thesis with it right now, but not sure if it's worth looking into. For one I'd have to brush up on ASM, while the two-core Pico lets me meet my requirements as-is anyway. Pretty cool though, you can write VGA drivers with it apparently!
- fragmede 4y agoPLDesque glue logic is cool, but the coolest thing I've seen is uC's with fully programmable pins, so eg the DAC device inside the chip can be connected to any of the external pins, making board layout dramatically simpler.
- bpye 4y agoI'm guessing you've seen the Infineon (formally Cypress) PSoC [0] stuff too? Both analogue and digital peripherals that can be configured mostly arbitrarily. There are also some neat mixed-signal parts from Dialog [1] - no MCU but interesting analogue and digital blocks all the same. [0] - https://www.infineon.com/cms/en/product/microcontroller/32-bit-psoc-arm-cortex-microcontroller/ https://www.infineon.com/cms/en/product/microcontroller/32-b... [1] - https://www.dialog-semiconductor.com/products/greenpak https://www.dialog-semiconductor.com/products/greenpak
- duskwuff 4y ago
- cmeacham98 4y agoThe literal clock speed of CPUs has been stalling, but CPU performance is and has been on a massive increasing trend effectively ever since AMD released the first Ryzen CPUs. Recent product announcements from Intel and AMD show no sign of slowing down. Sure it's not the 'double performance in 1-2 generations' of the olden days, but it's definitely not stalled either.
- seiferteric 4y agoEven account for security vuln mitigations? As an aside, is there a good table somewhere listing all of the Meltdown/Spectre etc. vulns and current status regarding software and hardware fixes? My understanding is most still don't have hardware fixes yet.
- nwah1 4y agoThe improvements outside the processor matter more for a typical user. DDR5, PCIe5, USB4, Bluetooth 5.2, WiFi 6E, etc. These recent version bumps make everything feel faster, but the CPU gains are indeed coming much slower and at vastly higher cost. Die shrinks will likely reach their physical limit this decade for traditional silicon.
- codedokode 4y agoOne of the reasons why CPUs are getting faster is because the more transistors you have, the faster is the chip and vice versa (this is not a proven statement but rather my intuition). We might not be able to use higher clock frequency, but we still can fit more transistors on the same area.
- RC_ITR 4y agoWhat’s even more, is we can make higher frequency chips, it just turned out higher density gates was the easier path to go down. If the gates path reaches its end, we can still go back to clock. It won’t be easy or cheap to solve all the clock problems, but if it’s better than the alternative someone will do it (like how fracking only became viable as a means of drilling oil once the cheap, easy to get oil was somewhat depleted)
- codedokode 4y agoEven with modern technology (I guess) we have to use lots of tricks to get desired performance. So (I guess) the level of skills that was necessary to create the Pong, would help designing modern chips as well.