Skip Navigation
  • Basics of memory allocation

    >One thing that all programs on your computer have in common is a need for memory. Programs need to be loaded from your hard drive into memory before they can be run. While running, the majority of what programs do is load values from memory, do some computation on them, and then store the result back in memory.

    >In this post I'm going to introduce you to the basics of memory allocation. Allocators exist because it's not enough to have memory available, you need to use it effectively. We will visually explore how simple allocators work. We'll see some of the problems that they try to solve, and some of the techniques used to solve them. At the end of this post, you should know everything you need to know to write your own allocator.

    Found via [email protected] https://lemmy.pineapplemachine.com/post/24337

    0
  • Faster sorting algorithms discovered using deep reinforcement learning

    www.nature.com Faster sorting algorithms discovered using deep reinforcement learning - Nature

     Artificial intelligence goes beyond the current state of the art by discovering unknown, faster sorting algorithms as a single-player game using a deep reinforcement learning agent. These algorithms are now used in the standard C++ sort library.

    Faster sorting algorithms discovered using deep reinforcement learning - Nature

    Found via https://twitter.com/nirbheek/status/1666563969514090496

    > Using AlphaDev, we have discovered fixed and variable sort algorithms from scratch that are both new and more efficient than the state-of-the-art human benchmarks. The fixed sort solutions for sort 3, sort 4 and sort 5 discovered by AlphaDev have been integrated into the standard sort function in the LLVM standard C++ library. This library is used by several million users including universities and numerous international companies. In addition, we analyse the new algorithm discoveries, compare AlphaDev to stochastic search optimization approaches and apply AlphaDev to further domains to showcase the generality of the approach.

    0
  • John Carmack on inlined code

    >Indeed, if memory serves (it's been a while since I read about this)... > >The fly-by-wire flight software for the Saab Gripen (a lightweight >fighter) went a step further. It disallowed both subroutine calls and >backward branches, except for the one at the bottom of the main loop. >Control flow went forward only. Sometimes one piece of code had to leave >a note for a later piece telling it what to do, but this worked out well >for testing: all data was allocated statically, and monitoring those >variables gave a clear picture of most everything the software was doing. >The software did only the bare essentials, and of course, they were >serious about thorough ground testing. > >No bug has ever been found in the "released for flight" versions of that >code. > > Henry Spencer > [email protected]

    0
  • DreamBerd: The perfect programming language

    github.com GitHub - TodePond/DreamBerd: perfect programming language

    perfect programming language. Contribute to TodePond/DreamBerd development by creating an account on GitHub.

    GitHub - TodePond/DreamBerd: perfect programming language

    Discovered via @cmuratori on Twitter... https://twitter.com/cmuratori/status/1665838497918509057

    0
1 Active user