From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,e56fd2619c02e35a X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!postnews.google.com!n36g2000yqb.googlegroups.com!not-for-mail From: Rugxulo Newsgroups: comp.lang.ada Subject: Re: 64 bit codes Date: Tue, 27 Sep 2011 17:38:02 -0700 (PDT) Organization: http://groups.google.com Message-ID: <27c75797-a753-4c4c-a16c-501c9ee853b8@n36g2000yqb.googlegroups.com> References: <4e817fdb$0$7615$9b4e6d93@newsspool1.arcor-online.net> <213da3b7-f9d0-4a7d-b215-9992ee0f1a02@f6g2000vbm.googlegroups.com> <2a797a9e-f0e3-4fbe-8f40-b6787b4e2879@o11g2000yqc.googlegroups.com> NNTP-Posting-Host: 65.13.115.246 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1317171247 4193 127.0.0.1 (28 Sep 2011 00:54:07 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Wed, 28 Sep 2011 00:54:07 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: n36g2000yqb.googlegroups.com; posting-host=65.13.115.246; posting-account=p5rsXQoAAAB8KPnVlgg9E_vlm2dvVhfO User-Agent: G2/1.0 X-Google-Web-Client: true X-Google-Header-Order: HUALESNKRC X-HTTP-UserAgent: Mozilla/5.0 (X11; Linux i686; rv:6.0.2) Gecko/20100101 Firefox/6.0.2,gzip(gfe) Xref: g2news1.google.com comp.lang.ada:21150 Date: 2011-09-27T17:38:02-07:00 List-Id: Hi, On Sep 27, 8:48=A0am, Mok-Kong Shen wrote: > > On 32-bit gcc, arithmetic operations (+, *, etc.) on "unsigned long > long int" certainly all work, but it's inefficient. Anyway the runtime, > as I have observed in the past, is much higher than I would expect. > For lack of knowledge I have not attempted to see the actual code > generated, but I suppose that's done with the help of some low-level > macros. (By definition, there aren't 64-bit arithmetic instructions on > 32-bit hardware.) For on 64-bit hardware a native 64-bit arithmetic > operation shouldn't last very much longer than a corresponding 32-bit > opeartion, I would think. So you want better speed? Well, assuming it's even possible and you haven't reached a dead end, I imagine you have several realistic options: * use different compiler switches * use faster algorithms * use "better" (supported) compiler * use vectorization * use (tiny bits of) assembly * use "better" (supported) OS * use "better" (supported) language (I'm not being facetious here, I'm really trying to help. But this is a bit too naive an attempt I suppose.) * -mtune=3Dnative -O3 * http://seed7.sourceforge.net/algorith/index.htm * http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%2= 0Win64/Automated%20Builds/ (or) http://www.atego.com/support/eval-aonix-objectada/ * -ftree-vectorize * http://board.flatassembler.net/topic.php?t=3D7852&start=3D9 * https://fedorahosted.org/liveusb-creator/ (or) https://www.virtualbox.org/ * http://sourceforge.net/projects/freepascal/files/Win32/2.4.4/fpc-2.4.4.x8= 6_64-win64.exe/download P.S. I'm not on Win64 right now, so I can't honestly say I've tested MinGW-64 / Ada there (assuming it exists, oops). But here's hoping. ;-)