Deutsch   English   Français   Italiano  
<vrbjme$2bne2$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: bart <bc@freeuk.com>
Newsgroups: comp.lang.c
Subject: Re: Python recompile
Date: Tue, 18 Mar 2025 10:59:27 +0000
Organization: A noiseless patient Spider
Lines: 89
Message-ID: <vrbjme$2bne2$1@dont-email.me>
References: <vq1qas$j22$1@gallifrey.nk.ca> <20250308192940.00001351@yahoo.com>
 <vqi1ge$8jg8$1@dont-email.me> <vqmgjv$3a2il$1@paganini.bofh.team>
 <vqn4dn$1eb9s$1@dont-email.me> <vqo3ss$3hkas$1@paganini.bofh.team>
 <vqph2e$203bs$2@dont-email.me> <vqvtop$cpvn$1@paganini.bofh.team>
 <vr1nkh$1miii$1@dont-email.me> <G8_AP.37556$D_V4.24121@fx39.iad>
 <vr1uk1$1sb5s$1@dont-email.me> <874izvjs4m.fsf@nosuchdomain.example.com>
 <vr27td$22vgq$2@dont-email.me> <87senfi7ii.fsf@nosuchdomain.example.com>
 <vr2dbm$2995t$1@dont-email.me> <vr2onl$2hjmt$3@dont-email.me>
 <vr3k67$3a5r2$1@dont-email.me> <vr3li9$3bqnp$1@dont-email.me>
 <vr3php$3di63$2@dont-email.me> <vr3qa3$3fua7$1@dont-email.me>
 <vr3vup$3jjoq$1@dont-email.me> <vr4ba0$3tj6e$1@dont-email.me>
 <vr4emj$3vejc$1@dont-email.me> <vr67qo$1inip$1@dont-email.me>
 <vr6ert$1ob25$1@dont-email.me> <vr93a6$3i2s$1@dont-email.me>
 <vr9bd9$adgu$1@dont-email.me> <vr9ir0$gve3$1@dont-email.me>
 <vr9l30$id99$1@dont-email.me> <vrbfrn$2899l$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 18 Mar 2025 11:59:27 +0100 (CET)
Injection-Info: dont-email.me; posting-host="35833daf7a617b7c2106f27a6fe8438d";
	logging-data="2481602"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+omnV1RnHnIVodsORdh86X"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:Rcll1Y8LFqW+1QQgeO/kzoT+OoY=
In-Reply-To: <vrbfrn$2899l$1@dont-email.me>
Content-Language: en-GB
Bytes: 4933

On 18/03/2025 09:53, Muttley@DastardlyHQ.org wrote:
> On Mon, 17 Mar 2025 17:10:59 +0000
> bart <bc@freeuk.com> wibbled:
>> On 17/03/2025 16:32, Muttley@DastardlyHQ.org wrote:
>>> On Mon, 17 Mar 2025 14:25:46 +0000
>>> bart <bc@freeuk.com> wibbled:
>>>> On 17/03/2025 12:07, Muttley@DastardlyHQ.org wrote:
>>>>> Anything C could do so long as you don't include all the standard C
>> libraries
>>>>
>>>>> in "anything".
>>>>
>>>> Another mysterious remark. You seem to consider it your job to put down
>>>> anything I do or say!
>>>>
>>>> So, what do the standard C libraries have to do with anything here?
>>>
>>> They're generally the interface to the OS on *nix. No idea about windows.
>>
>> I think you can assume that the tool I used was up to the job
> 
> I'm assuming nothing since all we have is your word for it.
> 
>>> So presumably your amazing build system checks the current module build dates
>>
>>> and doesn't rebuild stuff that it doesn't have to?
>>
>> Why would it matter? I can compile code at one million lines every two
>> seconds, and my largest project is 50K lines - do the math.

> 
> You'll have to excuse me if I take that figure with a large packet of salt
> unless the code does nothing particularly complicated.

If you don't believe my figures, try Tiny C on actual C programs.

Tiny C is single pass, mine does multiple passes so is a little slower.

What the code does is not that relevant:

c:\cx\big>tim tcc fann4.c
Time: 0.855

c:\cx\big>dir fann4.exe
18/03/2025  10:44        10,491,904 fann4.exe

So tcc can generate 12MB per second in this case, for a test file of 
nearly 1M lines.

What you should find harder to believe is this figure:

c:\cx\big>tim gcc fann4.c
Time: 50.571                       (44.2 on subsequent build)

c:\cx\big>dir a.exe
18/03/2025  10:51         9,873,707 a.exe

Since it can only manage 0.2MB per second for the same quality of code.

How about making such compilers faster first before resorting to 
makefile tricks?

Here is my C compiler on the same task:

c:\cx\big>tim bcc fann4
Time: 1.624

c:\cx\big>dir fann4.exe
18/03/2025  10:55         6,842,368 fann4.exe

Throughput is only 4MB/second, but it is generating a smaller executable.

>> I find it astonishing that even with machines at least a thousand times
>> faster than I've used in the past, you have to resort to tricks to avoid
>> compilation.
> 
> Why not?

You're missing the point. I mentioned a throughput of 500Klps above; 
divide that by 1000, and it means a machine from 40 years was able to 
build programs at 500 lines per second, which seems plausible.

So what do you think is a more realistic figure for today's machines: 
20Klps for an unoptimised build? (The gcc test managed 22Klps.) That 
would mean a compilation speed of 20 lines per second on an early 80s 
PC, which is ludicrous.

Something is badly wrong.