vroom VS movfuscator

Compare vroom vs movfuscator and see what are their differences.

movfuscator

The single instruction C compiler (by xoreaxeaxeax)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
vroom movfuscator
17 82
447 9,013
- -
5.0 0.0
9 months ago about 1 year ago
Verilog C
GNU General Public License v3.0 only GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

vroom

Posts with mentions or reviews of vroom. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-15.
  • How can I leverage RISC-V in my final year Electrical & Electronics Engineering project? Seeking advice and project ideas.
    2 projects | /r/RISCV | 15 Nov 2023
    Maybe implement a big feature for a open source design? like vroom or xiangshan.
  • In your opinion, what is the most advanced open source softcore processor?
    2 projects | /r/FPGA | 28 May 2023
    The two most micro architecturally advanced cores that I know of are BOOM, an out of order RV64GC core with all the features you expect plus sort of weird fancy things like short forward branch predication, and VROOM, another out of order RV64GC core with things like uop fusion and a trace cache.
  • ARM or x86? ISA Doesn’t Matter
    4 projects | news.ycombinator.com | 14 May 2023
    I had VROOM! in mind (https://github.com/MoonbaseOtago/vroom) because I remembered it aims for 4 IPC avg with a width of 8. Though looking again it's 8 compressed 16 bit instructions or 4 uncompressed 32 bit instruction.

    So you could argue a real mix of instructions is not going to be all 16 bit but some 16 and some 32, so the 8 is rarely achieved in practice, and also the block diagram only shows 4 decode blocks. But it can in fact peak at 8 instructions decoded per clock, so I think that qualifies. (You could even argue it's especially impressive, since RISC-V technically qualifies as variable-length encoding like x86, it's just that only 16/32 instructions are really used at the moment)

  • How to build a Startup use open source chips
    4 projects | /r/RISCV | 4 May 2023
    If you are interested in high performance look into vroom , c910 and xianghan, maybe you could adopt one of them.
  • ARM versus RISC-V
    2 projects | /r/RISCV | 9 Mar 2023
    On top of what others mentioned (Red Hat) , it is also possible to go with the mysql/mariadb model of dual licensing, you can have a copyleft license where you must contribute back changes, but also allow selling an proprietary license if they want to enhance it but not share the improvements (like amazon or Ampere Computing that enhance ARM designs and sells it for servers), there is already a RISK-V implementation that aims to do that (vroom). another option is a non profit foundation that companies contribute to because they use the project and want it to be better (like the linux foundation) , risc-v has similar nonprofits like the chips alliance (which develops the Rocket-Chip ) or the OpenHW Group (which develops CVA6), there is also lowrisc which develops ibex (but as far as i can tell isn't governed by the contributing companies like the other non profits).
  • When will there be a 16-32 core RISC V high end desktop processor and motherboard ?
    1 project | /r/RISCV | 25 Feb 2023
    You want a very optimistic answer? someone is working on open source server core, It is already announced and i have been told it is somewhere around four years for a chip to ship after announcement so i would say 4 years from now.
  • Open-source RISC-V CPU projects for contribution
    8 projects | /r/RISCV | 28 Jan 2023
  • What caused/started the "CISC vs RISC" in the 1980s?
    3 projects | /r/hardware | 28 Nov 2022
    At the moment the Apple M1/M2 are the king of wide decode. Within a couple of years you will see equally wide decode and execute of RISC-V from companies such as Rivos, or indeed open source and GPL'd projects such as VROOM! (https://github.com/MoonbaseOtago/vroom)
  • ARM to prohibit proximity of CPU w 3rd-party modules in one chip
    1 project | news.ycombinator.com | 1 Nov 2022
    > True performance RISCV designs are going to be people's money maker and never open sourced.

    That turns out not to be the case.

    Alibaba's C910 core -- roughly comparable to the ARM A72 cores (at the same MHz) in the Pi 4 -- is open sourced. It is being used, at 2.5 GHz, in the upcoming "Roma" laptop. That is rather expensive (for now), but I suspect the same TH1520 SoC will quickly find its way onto cheaper SBCs.

    There is a very wide OoO GPL'd RISC-V core that is under development. It is aiming for eventual Apple M1 level performance. The current iteration is falling short of that at the moment, but it's already comparable to the ARM A76 in the latest RK3588 SBCs: https://github.com/MoonbaseOtago/vroom

  • I am bored because I am not capable to work and want to learn something useful/interesting
    2 projects | /r/RISCV | 21 Sep 2022
    Then you can help open source hardware designs like xiangshan or vroom.

movfuscator

Posts with mentions or reviews of movfuscator. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-11.
  • M/o/Vfuscator: The single instruction C compiler (2020)
    1 project | news.ycombinator.com | 29 Dec 2023
  • controversialOpinion
    2 projects | /r/ProgrammerHumor | 11 Dec 2023
    Everything can be reduced to assignments. https://github.com/xoreaxeaxeax/movfuscator
  • M/o/Vfuscator: The single instruction C compiler
    3 projects | news.ycombinator.com | 5 Nov 2023
  • Subtraction Is Functionally Complete
    3 projects | news.ycombinator.com | 7 Oct 2023
    However, the movfuscator as implemented does still require a sigaction(2) syscall to set up a signal handler, under the justifications that "it is not actually part of the program" and that "if we were in ring 0, we wouldn't need help from the kernel" [0]. However, the latter part seems a little dubious to me: without the help of the kernel running non-MOV instructions, you'd never be able to escape from 16-bit real mode into 32-bit protected mode, since you wouldn't be able to load a valid GDT with the LGDT instruction (as far as I am aware).

    [0] https://github.com/xoreaxeaxeax/movfuscator/blob/90a49f31219...

  • The bigger the interface, the weaker the abstraction
    2 projects | news.ycombinator.com | 29 Jul 2023
    I _think_ the idea is thinking of an "interface" as "something that you use as a way to interact with something from outside an abstraction". I'd summarize their argument as reasoning that if the goal of an abstraction is to avoid having to care about the internal details of something, an interface is a way to expose a subset of ways to interact with it, and the more you expand it, the more it exposes the internals of the thing being abstracted. I don't think they necessarily mean this only in terms of programming, but you could apply this argument to a programming language interface; if you use an interface for interacting with something instead of its direct functionality, each additional method you add to the interface exposes more details of the inner value, which makes it less of an abstraction.

    Assuming my interpretation is correct, I'm not sure I totally buy this argument because there doesn't seem to be an obvious way to define the "size" of an interface where it holds true. The naive way to define the size would be number of methods, but I'd argue that methods can vary so much in terms of the amount of cognitive overhead they "expose" to the user that it's not very meaningful. Consider the Movfuscator compiler[0], which compiles code into binaries only using MOV x86 instructions because it happens to be Turing complete; as complex as it might be to learn x86 assembly as a whole and start writing programs directly in it, I'm dubious that trying to do so only with MOV would somehow be easier. Put another way, an x86 instruction set that only contains the MOV instruction is not a "stronger" abstraction than the actual one because it _introduces_ complexity that doesn't exist in the original. Does adding an ADD instruction alongside MOV increase the strength of the abstraction, or weaken it? I don't think there's an answer that we'd immediately all agree on for this sort of thing.

    Ultimately, I think trying to measure interfaces through the number of methods they expose is similar to trying to measure code by the number of lines in it; while there are some extreme cases where we'd likely all agree (e.g. for a fizzbuzz implementation, having 10 lines of code is probably better than thousands of lines of code[1]), we can't really come up with a good objective metric because the "target" number is based on the complexity of what you're trying to define, and we don't have a way of quantifying that complexity. I think the ideas here are still super interesting though, not because they have definitive right or wrong answers, but because thinking about stuff like this overall improves one's ability to write good software for usage by other programmers.

    [0]: https://github.com/xoreaxeaxeax/movfuscator

  • The M/o/Vfuscator contains a complete mov-only floating point emulator. Since it is approximately 500,000 instructions, you must explicitly link to it if you need it
    2 projects | /r/programmingcirclejerk | 15 May 2023
  • Can the RISC instruction set be simplified even further?
    1 project | /r/hardware | 30 Apr 2023
    The mov instruction in x86-64 is Turing complete. Someone even made a C compiler using only mov.
  • This is definitely not the best way to initialize an array
    1 project | /r/programminghorror | 29 Apr 2023
    Are you sure they didn't use the MOVFUSCATOR?
  • Can every function defined in popular libraries/frameworks be traced back to primitive data types, conditional statements and loops?
    1 project | /r/learnprogramming | 16 Apr 2023
    Yep. In fact you can reduce everything to just one simple assembly instruction.
  • I am going to learn goto
    2 projects | /r/ProgrammerHumor | 16 Apr 2023

What are some alternatives?

When comparing vroom and movfuscator you can also consider the following projects:

riscv-v-spec - Working draft of the proposed RISC-V V vector extension

demovfuscator - A work-in-progress deobfuscator for movfuscated binaries [Moved to: https://github.com/leetonidas/demovfuscator]

XiangShan - Open-source high-performance RISC-V processor

obfuscator

riscv-isa-manual - RISC-V Instruction Set Manual

Molebox - MoleBox lets you convert your application into an all-sufficient stand-alone executable, containing everything needed: components, media assets, registry entries.

openc910 - OpenXuantie - OpenC910 Core

onelinerizer - Shamelessly convert any Python 2 script into a terrible single line of code

hn-search - Hacker News Search

sectorlisp - Bootstrapping LISP in a Boot Sector

openc906 - OpenXuantie - OpenC906 Core

Unity-game-hacking - A guide for hacking unity games