embedded machine learning research engineer - georgist - urbanist - environmentalist

  • 10 Posts
  • 73 Comments
Joined 1 year ago
cake
Cake day: June 22nd, 2023

help-circle



  • The raison d’être for RISC-V is domain-specific architecture. Currently, computational demands are growing exponentially (especially with AI), but Moore’s Law is ending, which means we can no longer meet our computational demands by scaling single-core speed on general-purpose CPUs. Instead, we are needing to create custom architectures for handling particular computational loads to eke out more performance. Things like NPUs, TPUs, etc.

    The trouble is designing and producing these domain-specific architectures is expensive af, especially given the closed-source nature of computer hardware at the moment. And all that time, effort, and money just to produce a niche chip used for a niche application? The economics don’t economic.

    But with an open ISA like RISC-V, it’s both possible and legal to do things like create an open-source chip design and put it on GitHub. In fact, several of those exist already. This significantly lowers the costs of designing domain-specific architectures, as you can now just fork an existing chip and make some domain-specific modifications/additions. A great example of this is PERCIVAL: Open-Source Posit RISC-V Core with Quire Capability. You could clone their repo and spin up their custom RISC-V posit chip on an FPGA today if you wanted to.








  • Sounds similar to some of the research my sister has done in her PhD so far. As I understand, she had a bunch of snapshots of proteins from a cryo electron microscope, but these snapshots are 2D. She used ML to construct 3D shapes of different types of proteins. And finding the shape of a protein is important because the shape defines the function. It’s crazy stuff that would be ludicrously difficult and time-consuming to try to do manually.


  • Back when I was in my first year of uni, I applied for a part-time job on indeed. Found out it was a scam when they wanted to pre-pay me with a too-big check and have me transfer the difference to some other account. I noped right out of there.

    For those who might be unaware, the scam is they send you a fraudulent check, but it might take a few days to be discovered as such by your bank. But in the meantime, the amount shows up in your account and you transfer the money they tell you to (which is a legitimate transfer). Then, when the bank discovers the check was fraudulent, they remove the amount from your account, but you’re left high and dry because you can’t undo the transfer because the transfer you did was legit.





  • I moved from California to Montreal a few years back to study, and now I’m staying for good. I tried duolingo on and off for far too long, but I found it super uninteresting and hard to remain committed to.

    Best strategy I’ve found is called comprehensible input. The idea is to find books or other reading material that you can get the basic gist of when reading, despite not understanding every single word and phrase and grammatical construction. The more you read, the more you’ll find yourself able to understand, which is also very motivsting!

    Also, make sure it’s material that actually interests you. The idea is it’s better to read extensively, reading things that actually interest you to some degree and keep you mentally engaged, than to just really intensively study a much smaller amount of (less interesting) material.

    This actually mirrors how we acquire languge. The idea is to intuitively understand French by having seen a lot of it rather than to basically memorize French. You ultimately want to be able to glance at a sign, for instance, and just know what it means without having to translate in your head.

    Some resources I found useful were these French illustrated books in Dollarama, but even better is a series of books designed to be comprehensible input by Olly Richards. He’s a native English speaker and polyglot who has written a bunch of graded readers that gradually increase in vocabulary and difficulty. He has several books for French, including beginner short stories, intermediate short stories, beginner conversations, intermediate conversations, climate change, WW2, and philosophy. The nice thing is he actually does a good job of making the stories and content interesting to an adult learner, unlike the children’s books at Dollarama.

    Even his beginner books might be a little too advanced for your level so far, though, from what you say. If they are, it’d be best to find some material at a lower level that you can understand a little better. After all, if it’s too hard for you, it will make the process much slower and less enjoyable, which will make it much more likely that you quit. You could even simply try googling “french comprehensible input” to try to find material suitable for your level.

    One last resource is the government of Quebec offers free in-person courses for immigrants and many French learners. They are part-time, and they offer multiple options for hours per week, so you could pick what works best for you. It would be worth checking to see if you might qualify for those courses once you move here.



  • Yeah, I’m working in embedded ML, and it’s an insanely exciting time. We’re getting more and more microcontrollers and single-board computers with special AI accelerators, many of them RISC-V, by the day it seems. One of the next steps (in my opinion) is finding a good way to program them that doesn’t involve C/C++ (very fast but also so painful to do AI with) or Python (slow unless it’s wrapping underlying C code, and unsuitable for microcontrollers). In fact, that’s exactly what I’m working on right now as a side project.

    What’s also cool is RISC-V promises to be the one instruction set architecture to rule them all. So instead of having PCs as x86, phones and microcontrollers as ARM, then all sorts of other custom architectures like DSPs (digital signal processors), NPUs, etc., we could just have RISC-V with a bunch of open standard extensions. Want vector instructions? Well, here’s a ratified open standard for vector instructions. Want SIMD instructions? Congrats, here’s another ratified open standard.

    And all these standards mean it will make it so much easier for the compiler people to provide support for new chips. A day not too long from now, I imagine it will become almost trivial to compile programs that can accelerate tons of scientific, numerical, and AI workloads onto RISC-V vector instructions. Currently, we’re stuck using GPUs for everything that needs parallelization, even though they’re far from the easiest or most optimal devices for many of our computational needs.

    As computing advances, we can just create and ratify new open standards. Tired of floating point numbers? You could create a proposal for a standard posit extension today if you wanted to, then fork LLVM or GCC or something to provide the software support as well. In fact, someone already has implemented an open-source RISC-V chip with posit arithmetic and made a fork of LLVM to support it. You could fire it up on an FPGA right now if you wanted.



  • It’s especially dumb because RISC-V is – dare I say it – inevitably the future. Trying to crack down on RISC-V is like trying to crack down on Linux or solar photovoltaics or wind turbines. That is, you can try to crack down, but the fundamental value proposition is simply too good. All you’ll achieve in cracking down is hurting yourself while everyone else gets ahead.



  • Yeah, this is a great example of why I make an effort to specify the government when criticizing countries. Russia’s invasion of Ukraine? I call Putin and his government evil but never the Russian people at large. China’s genocide of the Uyghurs? I call Xi Jinping and the CCP evil but never the Chinese people at large. Israel’s apartheid state and ethno-religious cleansing? I call Netanyahu and his government evil but never the Israeli people at large (and certainly not Jews at large).

    The allure of treating entire demographics or populaces as a monolith and blaming them for the crimes of their government is exactly why genocidal rhetoric is so dang pervasive, and I won’t abide by it.

    (Yes, I will also criticize civilians who actively support these crimes, but I make sure to be clear in distinguishing between them and the rest of the civilian population.)



  • People complain about the UN doing nothing, but it’s also important to remember it was literally designed to not be able to do anything if one of the security council nations – USA, UK, France, Russia, or China – vetoes it. And USA always vetoes anything against the Israeli government.

    Considering the UN’s hands are tied, I’m very glad they’re at least using their figurative microphone and international influence to call attention to how fucked up the treatment of Palestinians is.

    I don’t know for others, but growing up American, Israel and its friends in Washington had done a terrific job of conflating any criticism of Israel with anti-semitism. What finally got me to re-evaluate my stance on the Israeli government a few years back was when well-known, respectable organizations like the Human Rights Watch and Amnesty International started using the word “apartheid” to describe the situation of Palestinians.

    Hearing sources like the UN Office for Human Rights, the UN Secretary General, Human Rights Watch, and Amnesty International calling out the Israeli government’s actions in strong, unequivocal terms like “war crime” and “apartheid” is a start. I wish they could do more, and I sure as heck am angry with US foreign policy in this, but I’m just glad the UN has the balls to actually call this a war crime.


  • This video by a political science professor explains it best: https://youtu.be/zMxHU34IgyY?si=N5oHElN4Xlbiqznh

    In short, the only people who truly know are Hamas, and the best the rest of us can do is speculate.

    Some possibilities are that Hamas wanted to sabotage normalizing relations between Israel and the rest of the Muslim world, that Hamas wanted to bait Israel into a wildly disproportionate response that would garner themselves sympathy and recruits, that Hamas was bluffing and feigning strength and counting on Israel to think the attack was bait, that Hamas was just acting on bloodlust and wanted to attack regardless of the consequences, or many other possibilities.

    Further, we focus a lot on the substative issues, i.e., the grievances and disagreements at hand, but we don’t talk about the bargaining frictions nearly enough. There are countless border disputes around the world, and yet they rarely result in war. Why? Because war is costly and most wish to avoid it. War typically happens when there are both substantive issues and bargaining frictions, i.e., things preventing the two sides from negotiating a solution. But us onlookers can’t even know for sure what these frictions are, only speculate.

    All this is simply the nature of the fog of war, that the true strategies/goals won’t be known for a while, if ever. Anyone who tries to tell you with certainty why they did what they did at this stage doesn’t actually know with any degree of certainty. Nobody but Hamas actually knows.

    I do recommend watching the full video above, as the professor is very engaging, rather amusing, and covers this topic quite thoroughly.