[Note I use a news server which forbids attachments so the attachments mentioned below were emailed to Karl Nyberg.] On Mon, 15 Feb 2010, Karl Nyberg sent: |----------------------------------------------------------------------| |"On Feb 15, 8:10 am, Colin Paul Gloster | |wrote: | |> On Wed, 10 Feb 2010, Darek Maksimiuk sent: | |> | |> |------------------------------------------------------------------|| |> |"[..] || |> | || |> |[..] || |> |I am willing to dedicate some of my free time to try to port Ada|| |> |compiler to this platform. || |> |[..] || |> | || |> |[..] || |> | || |> |P.S. Imagine an Ada program running on this device: || |> |https://www.xmos.com/products/development-kits/xmp-64" || |> |------------------------------------------------------------------|| |> | |> Dear Darek Maksimiuk, | |> | |> Well, if you show me the C++ program which I showed in news:alpine.LNX.2.00.1002151055530.17315@Bluewhite64.example.net |> running on your XMOS development kit at a speed which when scaled up| |> for an XMP-64 would be faster than an Intel quadcore machine, then I| |> would be able to get an Ada compiler for it, if I could convince a | |> funding agency to pay for an XMP-64. | |> | |> Please let me know what happens. | |> | |> Yours sincerely, | |> Colin Paul Gloster, | |> Grupo de Instrumentação Atómica e Nuclear, | |> Departamento de Física, | |> Universidade de Coimbra, | |> Rua Larga, | |> 3004-516 Coimbra, | |> Portugal. | |> Telephone: +351 239 410663 | |> Fax: +351 239 829158 | | | |That link didn't resolve to anything interesting for me. Can you | |forward me what you might have - it might be interesting to try it on | |my 8-core x 4 thread SunFire T1000. | | | |-- Karl --" | |----------------------------------------------------------------------| Dear Mr. Nyberg, Please find attached in Logarithmic_Work_In_Ada.adb and logarithmic_work_in_CPlusPlus.cc and body_in_CPlusPlus.cc the timing programs which I presented in another thread on news:comp.lang.ada in the post news:alpine.LNX.2.00.1002151055530.17315@Bluewhite64.example.net They represent just a few per cent at most of real simulations which I work on such as in the attached files Cosima_activation_for_gamma_source__Step1.source and Gamma-Ray_Imager_includable_Cosima_commands_for_Steps_1_and_3.source and Gamma-Ray_Imager_includable_Cosima_commands_for_three_steps.source and geometry.geo.setup which are input files for MEGAlib (which can be downloaded from WWW.MPE.MPG.De/MEGA/megalib.html#downloads and which also needs you to download Geant and CLHEP (as explained in the MEGAlib installation manual)). Those *source and *setup files can be used (after you have installed MEGAlib) by copying them into a directory with about 800 megabytes free space and running date ; time cosima -s 1234 Cosima_activation_for_gamma_source__Step1.source >> Step1_with_seed_1234.stdout.txt 2>> Step1_with_seed_1234.stderr.txt ; date Note that the installation scripts supplied with MEGAlib and Geant and CLHEP do not use compiler optimization flags (not even when you use the scripts' options supposedly for optimization) so set these yourself or cosima would take more than twenty times longer to run if you compile with GCC. So, for compiling CLHEP, set the environment variable CXXFLAGS to a suitable value, for example in the case of GCC with BASH: export CXXFLAGS='-findirect-inlining -ftree-switch-conversion -O3 -ffast-math' If compiling on GNU/Linux with GCC then modifying the file geant4.9.2.b01/config/sys/Linux-g++.gmk to contain #Gloster wants optimization... CXXFLAGS += -O3 -findirect-inlining -ftree-switch-conversion -ffast-math #Gloster wants symbolic debugging... CXXFLAGS += -g would be a good idea. For Sun Studio on Solaris, it might be worthwhile checking whether geant4.9.2.b01/config/sys/SUN-CC.gmk lacks optimization flags. Similarly for MEGAlib, create the file MEGAlib/config/Makefile.user and in the case of GCC put something like #Gloster wants optimization... OPT += -O3 -findirect-inlining -ftree-switch-conversion -ffast-math #Gloster wants symbolic debugging... OPT += -g These libraries are not published in Ada, but I have made significant improvements in Ada which are not yet published. I would be interested in making a considerable amount of this work available to you in the near future. In the meantime I would be interested in timings which you could give me for Logarithmic_Work_In_Ada.adb and logarithmic_work_in_CPlusPlus.cc and Cosima_activation_for_gamma_source__Step1.source . I would be happy to collaborate with you on a paper. I have been tasked with considering whether it is worthwhile making a proposal to use a supercluster ( WWW.LCA.UC.Pt/welcome-to-milipeias-portal?set_language=en ). Perhaps your hardware could be used instead or also. Yours sincerely, Colin Paul Gloster P.S. Thank you for the annotated copy of the Ada83 standard which you gave me many years ago. Unfortunately it and other Ada hardcopy documents were damaged in a flood last month, but I have left it in sunlight and the worst of the damage seems to have cleared up quickly.