www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - D auto-tester

reply Walter Bright <newshound2 digitalmars.com> writes:
In case not everyone knows about this, Brad Roberts conceived, implemented, set 
up and maintains an automated tester that watches github for checkins, and when 
there's something new it does a complete build of dmd and phobos, then runs the 
test suite on it, and posts the results:

http://d.puremagic.com/test-results/

I think it's awesome.
May 05 2011
next sibling parent reply Ulrik Mikaelsson <ulrik.mikaelsson gmail.com> writes:
I too think it's awesome.

Just some quick thoughts;
 * Could some kind of benchmarking be integrated to track performance
aspects, especially find regressions? Perhaps a bit high on the
utility/work-scale?
 * Is the script available for running offline, on some local machine,
I.E. verifying different distro:s, etc?
 * 1280x1024 is too small for seeing the results. Could the view
perhaps be made slightly more compact? (Especially since OSX64 and
Win64 might be interesting targets in the near future?)
 * What is "Linux 32/64" vs. "64/32"?

In any case, great stuff.

2011/5/5 Walter Bright <newshound2 digitalmars.com>:
 In case not everyone knows about this, Brad Roberts conceived, implemented,
 set up and maintains an automated tester that watches github for checkins,
 and when there's something new it does a complete build of dmd and phobos,
 then runs the test suite on it, and posts the results:

 http://d.puremagic.com/test-results/

 I think it's awesome.

May 05 2011
next sibling parent Daniel Gibson <metalcaedes gmail.com> writes:
Am 05.05.2011 22:15, schrieb Ulrik Mikaelsson:
 I too think it's awesome.
 
 Just some quick thoughts;
  * Could some kind of benchmarking be integrated to track performance
 aspects, especially find regressions? Perhaps a bit high on the
 utility/work-scale?
  * Is the script available for running offline, on some local machine,
 I.E. verifying different distro:s, etc?
  * 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)
  * What is "Linux 32/64" vs. "64/32"?
 

I *guess* Linux 32/64 means "32bit dmd generating 64bit binaries" and "Linux 64/32" means "64bit dmd generating 32bit binaries". Also note "Linux 64/64" ("64bit dmd generating 64bit binaries). Seems like we get a native 64bit compiler for Linux. Awesome! (But note that this is just my interpretation, maybe I'm wrong).
 In any case, great stuff.

I agree :)
 
 2011/5/5 Walter Bright <newshound2 digitalmars.com>:
 In case not everyone knows about this, Brad Roberts conceived, implemented,
 set up and maintains an automated tester that watches github for checkins,
 and when there's something new it does a complete build of dmd and phobos,
 then runs the test suite on it, and posts the results:

 http://d.puremagic.com/test-results/

 I think it's awesome.


May 05 2011
prev sibling parent reply Robert Clipsham <robert octarineparrot.com> writes:
On 05/05/2011 21:15, Ulrik Mikaelsson wrote:
 I too think it's awesome.

 Just some quick thoughts;
   * Could some kind of benchmarking be integrated to track performance
 aspects, especially find regressions? Perhaps a bit high on the
 utility/work-scale?

Yes, this wouldn't be of much use though, as little work is done on the backend, and it only tracks dmd right now. It could perhaps be forked in a performance branch if someone were interested in that.
   * Is the script available for running offline, on some local machine,
 I.E. verifying different distro:s, etc?

Yes, it's on github I believe, see the test/ directory of dmd. The server/client stuff is also available elsewhere I believe.
   * 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)

There was a recent discussion about this, there are plans to create a much cleaner and more compact view.
   * What is "Linux 32/64" vs. "64/32"?

32 bit dmd creating 64 bit binaries, 64 bit dmd creating 32 bit binaries. I believe you get a description if you hover over them. -- Robert http://octarineparrot.com/
May 05 2011
parent reply "Nick Sabalausky" <a a.a> writes:
"Robert Clipsham" <robert octarineparrot.com> wrote in message 
news:ipv3tv$1eg0$1 digitalmars.com...
   * What is "Linux 32/64" vs. "64/32"?

32 bit dmd creating 64 bit binaries, 64 bit dmd creating 32 bit binaries. I believe you get a description if you hover over them.

Probably a stupid question, but 32-bit DMD can't create 64-bit binaries when running on a 32-bit system, can it? I assume 32-bit DMD can only create 64-bit binaries when running on a 64-bit system, right?
May 07 2011
parent reply Robert Clipsham <robert octarineparrot.com> writes:
On 07/05/2011 23:15, Nick Sabalausky wrote:
 "Robert Clipsham"<robert octarineparrot.com>  wrote in message
 news:ipv3tv$1eg0$1 digitalmars.com...
    * What is "Linux 32/64" vs. "64/32"?

32 bit dmd creating 64 bit binaries, 64 bit dmd creating 32 bit binaries. I believe you get a description if you hover over them.

Probably a stupid question, but 32-bit DMD can't create 64-bit binaries when running on a 32-bit system, can it? I assume 32-bit DMD can only create 64-bit binaries when running on a 64-bit system, right?

It should be able to if you have a multilib gcc installed, along with the relevant 64bit libraries (that makes it sound so simple, I know from experience that anything to do with gcc almost 100% isn't that simple). You won't be able to run the resulting binary of course. -- Robert http://octarineparrot.com/
May 07 2011
parent reply "Nick Sabalausky" <a a.a> writes:
"Robert Clipsham" <robert octarineparrot.com> wrote in message 
news:iq4gpa$tq0$2 digitalmars.com...
 On 07/05/2011 23:15, Nick Sabalausky wrote:
 "Robert Clipsham"<robert octarineparrot.com>  wrote in message
 news:ipv3tv$1eg0$1 digitalmars.com...
    * What is "Linux 32/64" vs. "64/32"?

32 bit dmd creating 64 bit binaries, 64 bit dmd creating 32 bit binaries. I believe you get a description if you hover over them.

Probably a stupid question, but 32-bit DMD can't create 64-bit binaries when running on a 32-bit system, can it? I assume 32-bit DMD can only create 64-bit binaries when running on a 64-bit system, right?

It should be able to if you have a multilib gcc installed, along with the relevant 64bit libraries

Oh, cool :)
 (that makes it sound so simple, I know from experience that anything to do 
 with gcc almost 100% isn't that simple).

Definitely. I think I've managed to develop a strong allergy to gcc due to such issues in the past.
 You won't be able to run the resulting binary of course.

Aww, shucks ;) There go my plans of a software-based CPU upgrade!
May 07 2011
parent reply Robert Clipsham <robert octarineparrot.com> writes:
On 08/05/2011 01:05, Nick Sabalausky wrote:
 You won't be able to run the resulting binary of course.

Aww, shucks ;) There go my plans of a software-based CPU upgrade!

Check out QEMU, it will let you run a virtualized 64 bit operating system on 32 bit hardware, same for arm and a number of other cpu architectures. It's been a while since I used it, could do what you want though. I believe there's an extras package for it if you're on Ubuntu which adds a load of architectures if it's not available by default. Also make sure to get the kvm package if your hardware supports it, it'll give a significant speed boost. -- Robert http://octarineparrot.com/
May 07 2011
next sibling parent Daniel Gibson <metalcaedes gmail.com> writes:
Am 08.05.2011 02:33, schrieb Robert Clipsham:
 On 08/05/2011 01:05, Nick Sabalausky wrote:
 You won't be able to run the resulting binary of course.

Aww, shucks ;) There go my plans of a software-based CPU upgrade!

Check out QEMU, it will let you run a virtualized 64 bit operating system on 32 bit hardware, same for arm and a number of other cpu architectures. It's been a while since I used it, could do what you want though. I believe there's an extras package for it if you're on Ubuntu which adds a load of architectures if it's not available by default. Also make sure to get the kvm package if your hardware supports it, it'll give a significant speed boost.

If his hardware supports KVM, it has 64bit support anyway (at least for x86/amd64) ;)
May 07 2011
prev sibling parent "Nick Sabalausky" <a a.a> writes:
"Robert Clipsham" <robert octarineparrot.com> wrote in message 
news:iq4ojp$1ate$1 digitalmars.com...
 On 08/05/2011 01:05, Nick Sabalausky wrote:
 You won't be able to run the resulting binary of course.

Aww, shucks ;) There go my plans of a software-based CPU upgrade!

Check out QEMU, it will let you run a virtualized 64 bit operating system on 32 bit hardware, same for arm and a number of other cpu architectures. It's been a while since I used it, could do what you want though. I believe there's an extras package for it if you're on Ubuntu which adds a load of architectures if it's not available by default. Also make sure to get the kvm package if your hardware supports it, it'll give a significant speed boost.

Wow, I'm genuinely surprised anyone's even bothered to make anything that can emulate 64-bit on 32-bit hardware.
May 07 2011
prev sibling next sibling parent reply Brad Roberts <braddr puremagic.com> writes:
On Thu, 5 May 2011, Ulrik Mikaelsson wrote:

 Just some quick thoughts;
  * Could some kind of benchmarking be integrated to track performance
 aspects, especially find regressions? Perhaps a bit high on the
 utility/work-scale?

Could? Yes. Am I going to? Not likely. If someone else does, it could be incorporated.
  * Is the script available for running offline, on some local machine,
 I.E. verifying different distro:s, etc?

There's a link to the scripts at the bottom of the page. They're hosted on github. I've often got parts that aren't yet checked in but nothing that's particularly central to the testing.
  * 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)

See answers from the others. But in general, sorry. I'm catering to the people who are doing the primary development, and most have nice large and wide screens.
  * What is "Linux 32/64" vs. "64/32"?

As indicated already, hover over each of the titles for a longer description of the build. Later, Brad
May 05 2011
parent reply Jacob Carlborg <doob me.com> writes:
On 2011-05-05 23:21, Brad Roberts wrote:
 On Thu, 5 May 2011, Ulrik Mikaelsson wrote:

 Just some quick thoughts;
   * Could some kind of benchmarking be integrated to track performance
 aspects, especially find regressions? Perhaps a bit high on the
 utility/work-scale?

Could? Yes. Am I going to? Not likely. If someone else does, it could be incorporated.
   * Is the script available for running offline, on some local machine,
 I.E. verifying different distro:s, etc?

There's a link to the scripts at the bottom of the page. They're hosted on github. I've often got parts that aren't yet checked in but nothing that's particularly central to the testing.
   * 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)

See answers from the others. But in general, sorry. I'm catering to the people who are doing the primary development, and most have nice large and wide screens.

I have a display with a 1680x1050 resolution, it fills up the whole screen, no more room for additional platforms without scrolling. Still too small?
   * What is "Linux 32/64" vs. "64/32"?

As indicated already, hover over each of the titles for a longer description of the build. Later, Brad

-- /Jacob Carlborg
May 05 2011
parent "Nick Sabalausky" <a a.a> writes:
"Jacob Carlborg" <doob me.com> wrote in message 
news:iq0653$5fh$1 digitalmars.com...
 On 2011-05-05 23:21, Brad Roberts wrote:
 On Thu, 5 May 2011, Ulrik Mikaelsson wrote:

   * 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)

See answers from the others. But in general, sorry. I'm catering to the people who are doing the primary development, and most have nice large and wide screens.

I have a display with a 1680x1050 resolution, it fills up the whole screen, no more room for additional platforms without scrolling. Still too small?

My monitor is a beefy 21", but I have it set to 1152x864 because any more than that and all the UI elements are too small. Definitely can't fit that page in one screen without horizontal scrolling. Although since it's just a series a small tables (arranged in a table) I don't really mind the horizontal scrolling all that much. (Although I certainly wouldn't object to a less horizontally-intensive design. Not that I'm really one of the primary target users for it, though.)
May 06 2011
prev sibling next sibling parent Jose Armando Garcia <jsancio gmail.com> writes:
Awesome stuff!

One small comments. Have you thought about displaying it as a table? A
lot of words are duplicated hence wasting precious display space. The
table can look as follows:

                                Linux x86          ...
                         compile    unittest     ...
         dmd
00:00 druntime
         phobos

...

Hopefully that displays correctly...

-Jose
On Thu, May 5, 2011 at 6:21 PM, Brad Roberts <braddr puremagic.com> wrote:
 On Thu, 5 May 2011, Ulrik Mikaelsson wrote:

 Just some quick thoughts;
 =A0* Could some kind of benchmarking be integrated to track performance
 aspects, especially find regressions? Perhaps a bit high on the
 utility/work-scale?

Could? Yes. Am I going to? Not likely. =A0If someone else does, it could be incorporated.
 =A0* Is the script available for running offline, on some local machine,
 I.E. verifying different distro:s, etc?

There's a link to the scripts at the bottom of the page. =A0They're hoste=

 on github. =A0I've often got parts that aren't yet checked in but nothing
 that's particularly central to the testing.

 =A0* 1280x1024 is too small for seeing the results. Could the view
 perhaps be made slightly more compact? (Especially since OSX64 and
 Win64 might be interesting targets in the near future?)

See answers from the others. =A0But in general, sorry. =A0I'm catering to=

 people who are doing the primary development, and most have nice large an=

 wide screens.

 =A0* What is "Linux 32/64" vs. "64/32"?

As indicated already, hover over each of the titles for a longer description of the build. Later, Brad

May 05 2011
prev sibling parent Bruno Medeiros <brunodomedeiros+spam com.gmail> writes:
On 05/05/2011 20:19, Walter Bright wrote:
 In case not everyone knows about this, Brad Roberts conceived,
 implemented, set up and maintains an automated tester that watches
 github for checkins, and when there's something new it does a complete
 build of dmd and phobos, then runs the test suite on it, and posts the
 results:

 http://d.puremagic.com/test-results/

 I think it's awesome.

Awesome indeed. Continuous integration is a very beneficial technique for software development. -- Bruno Medeiros - Software Engineer
May 06 2011