flat assembler
Message board for the users of flat assembler.

Index > Projects and Ideas > Distributed Coding Project


Are YOU A Philanthropist?
Yes
20%
 20%  [ 1 ]
No
80%
 80%  [ 4 ]
Total Votes : 5

Author
Thread Post new topic Reply to topic
masonswanson



Joined: 17 Aug 2010
Posts: 51
masonswanson 24 Jan 2011, 07:15
There Are Many Projects Which Use Distributed Computing Technologies To Speed Various Types Of Thing Up That Would Normally Take Much Longer If Ran On A Single Workstation. Project Gutenburg's Text Versions Of Public Domain Ebooks Are All Proofread Using A Distributed Human Computing Concept, A Neural Network Can Be Trained To Perform Translation Much Like A Person Given Enough Examples Of Input-Output Relationships. mturk.com Is An Amazon Website In Which A Worker Is Given HITs(Human Information Tasks) Is Taught How To Perform The Given Job(If Necessary) And They Get Some Money For It. I Propose We All Work Together On I Project Like This(Not Necessarily On THAT Site) In Which We Translate C Source Code Into Easy To Read, Well Documented Assembly Source Code. After We Have So Much Data, We Can Use It To Train A Neural Network Which Runs Distributed On A Platform Such As GPU Or BOINC, Throughout It's Training And Once It Has The Capablities To Translate Medium Sized Projects Written In ANSI C, It Could Be Released Into The Public Domain Razz
Post 24 Jan 2011, 07:15
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20299
Location: In your JS exploiting you and your system
revolution 24 Jan 2011, 07:24
Isn't that the job of C compilers already: to translate C into assembly? Probably better the translate the original algorithms into assembly directly rather than go through the intermediate layer of the C language constraints.

As for "Easy To Read, Well Documented Assembly Source Code" that will always be a contentious issue.
Post 24 Jan 2011, 07:24
View user's profile Send private message Visit poster's website Reply with quote
masonswanson



Joined: 17 Aug 2010
Posts: 51
masonswanson 28 Jan 2011, 22:44
What i mean is that, since a c compiler which uses assembly as an intermediate language produces somewhat cryptic code, which could be fairly easily hand optimized, why don't we (The assembly language programmer's of the planet earth) port several c libraries and applications to hand optimized, well documented assembly source code, then people who are writing c applications could see what it should look like if they ever port it to assembly for performance reasons, they would be able to understand to some extent what is going on in say firefox, because the labels and macros we write would be named similarly to the c functions we had ported for them, but i am actually talking about writing an application that takes c source code and presents it to an assembly programmer to rewrite in assembly, one peice at a time, so if everybody would do a little bit of the work at a time, and perhaps have a second and third stage of the process where somebody gets the original c source, and one or two assembly sources that were hand written and then that person can pick the one they think is the most 'pretty', 'readable', or 'well commented' port, all of which would already work or it wouldnt be presented
Post 28 Jan 2011, 22:44
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20299
Location: In your JS exploiting you and your system
revolution 28 Jan 2011, 22:55
masonswanson wrote:
... which could be fairly easily hand optimized, ...
Optimised for what?

It is not that simple. You must know the domain of intended usage before you can start optimising anything.

Also, optimising assembly is not an easy process. Quite the opposite, it is very very hard.

Plus, C is portable (in general) and assembly is not. You lose the big advantage of the HLL, but what do you get in return to replace that loss?

However, I wonder what your intended purpose for this is? Perhaps if we knew what you are trying to achieve by rewriting large bodies of code into assembly then perhaps you might get some more followers.
Post 28 Jan 2011, 22:55
View user's profile Send private message Visit poster's website Reply with quote
masonswanson



Joined: 17 Aug 2010
Posts: 51
masonswanson 13 Feb 2011, 17:00
optimized for better readability and more meaningful label names
Post 13 Feb 2011, 17:00
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger Reply with quote
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 13 Feb 2011, 17:56
If you're using GCC, you can control the asm label used to refer to each variable and -masm=intel to tell it to use mostly Intel syntax assembly. http://gcc.gnu.org/onlinedocs/gcc/Asm-Labels.html
Post 13 Feb 2011, 17:56
View user's profile Send private message Reply with quote
masonswanson



Joined: 17 Aug 2010
Posts: 51
masonswanson 16 Feb 2011, 06:47
That is great i didnt know that but as far as my projects go i would prefer not to use GNU products or anything released under the gpl for that matter, what i wanted to do was turn things into assembly by hand to assemble with fasm and boot up my computer with nothing more than a tiny floppy based network centric os, or a version of python, cmu-lisp, swi-prolog, or other interpreter rewritten in fasm, and use that HLL for System-Level development. i would very much like a python Based operating system and it would be even more great if i could use python libraries written for other OSes simply because of the underlying drivers that the python system has access to, for instance say you have a high performance oracle database server, and on the other side of the room you have a 1996 compaq presario with 256 MB RAM built-in 64MB Graphics, and a Sound-Blaster sound card, standard ethernet controller, etc. you can use the compaq as a terminal to the database server either by executing shell commands, or some sort of batch scripting, or you could have the interface to the database be consistent with the operating system for the terminal, as well as your networking code, etc. etc. etc. of course the interpreter could still stay as being written in c, with the Virtual machine being written in assembly producing what i believe would be a moderate increase in speed compared to cpython, much like unladen swallow but with the goal being the complete rewriting of python into fasm compatible code with the ability to run directly on the hardware either through the compilation of python directly to x86 machine code or with a bootable python VM, you could then write hardware drivers using python
Post 16 Feb 2011, 06:47
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.