flat assembler
Message board for the users of flat assembler.
Index
> Programming Language Design > FASM/G Build Performance - I Surmise not an Issue |
| Author |
|
|
bitRAKE 31 Dec 2025, 00:22
If build times were an issue, initial startup for a particular environment could be cached as part of the system support -- the same could be done for fasm, too. (Analogous to the pre-compiled headers, [s]ccache, modules of the high-level languages.) To my knowledge, no such effort has ever been made.
|
|||
|
|
Greg_M 31 Dec 2025, 21:25
Post from 2020. May cause concern for those considering FASM/G?
Quote: ...I don't use fasmg because it is too slow. I have to wait almost an hour to complete a compilation set... https://board.flatassembler.net/topic.php?t=21488 It is from 2020, so perhaps improved now and/or perhaps when understood in the context, it's not an issue at all, hence my OP. |
|||
|
|
revolution 31 Dec 2025, 22:50
For my use case fasmg is considerably slower than fasm and does cause anguish. There is a trend in software development to add more layers of abstractions and hobble code with more "baggage" making it slower and more resource hungry. I have a fast computer, dammit, I don't want to make it slower each time new code comes along. Other examples of this effect are MS Teams and all the electron apps.
In addition to performance is the extras that fasmg needs to make it a complete assembler with all the required extra supporting macro files. Zipping up a project with asm sources and the assembler and sending it as a stand-alone package to a another customer/client/user requires also sending all the extra support macros along with it to make a complete set. It complicates the process and clutters up the package with extra bloat. For small projects with a single asm source file the bloat is very noticeable and degrades the experience, compared to needing only one exe for the single asm when using fasm. Keeping older versions available for fasm is easy, we just have each exe file with the version number appended to the filename, so assembling old code is straightforward. Supporting simultaneous older versions in fasmg needs a lot more work to setup separate folders to hold all the macros and have ways to specify those folders when assembling with different versions. That is my experience with fasmg. |
|||
|
|
Greg_M 31 Dec 2025, 23:36
revolution wrote: ...does cause anguish. revolution wrote: There is a trend in software development to add more layers of abstractions and hobble code with more "baggage" making it slower and more resource hungry. Other examples of this effect are MS Teams and all the electron apps. revolution wrote: In addition to performance is the extras that fasmg needs to make it a complete assembler with all the required extra supporting macro files. Zipping up a project with asm sources and the assembler and sending it as a stand-alone package to a another customer/client/user requires also sending all the extra support macros along with it to make a complete set. It complicates the process and clutters up the package with extra bloat. Last edited by Greg_M on 01 Jan 2026, 02:59; edited 1 time in total |
|||
|
|
revolution 01 Jan 2026, 00:35
fasmg doesn't compile C code. And C compilers don't assemble asm sources. I don't see how those can be compared in a meaningful way.
|
|||
|
|
Greg_M 01 Jan 2026, 01:29
revolution wrote: fasmg doesn't compile C code. And C compilers don't assemble asm sources. I don't see how those can be compared in a meaningful way. :?: |
|||
|
|
bitRAKE 01 Jan 2026, 03:10
revolution wrote: C compilers don't assemble asm sources. Compiler drivers do process/assemble asm sources. For GCC the assembly tooling is separate, but Clang has an integrated assembler (which can be bypassed for the traditional external tool). This impacts both inline assembly and stand-alone files. MSVC is a different beast - no inline assembly support - must use intrinsics or external assembly code. In that regard you are completely correct, but the other cases are more complicated as the compiler driver makes assembly integration seamless with other language support. Yet, I agree with the comparison to fasmg being largely invalid. fasmg is somewhere between the compiler drivers and monolithic translators (fasm, tcc, etc.). _________________ ¯\(°_o)/¯ AI may [not] have aided with the above reply. |
|||
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.