Xojo benchmark

Benchmark test comparison Vb6-Xojo 2014 r1.1

I am very surprised about these results, it seems that xojo is not fast then Vb6 !!!

test was done under windows 7 64bits, Intel i7 3770S @ 3.10 Ghz.

I’m sorry… 0.66 vs 0.70 seconds??? and you are complaining? that could be “noise”…

and without publishing both the VB and XOJO code… you statement has no merit… sorry

In my humble and unscientific opinion, if perception of speed is any type of benchmark then Xojo wins hands down. After using VB for almost 20 years, a program written in Xojo seems to run at assembler-like speed. sorry I couldnt disagree more with the original post.

I believe I know someone that is writing a xojo benchmark application. I wont mention any names but he should read this and speak up… hint hint… :slight_smile:

I remember reading about a benchmark test that opened/closed something like 10,000 windows. I dare someone…

I take the absolute opposite view. VB6 is very fast, and I wouldn’t be surprised if it were shown it was (say) 20% faster in a general sense. That’s just code. As far as drawing I think it’s even faster.

And (this isn’t a reference to speed but to performance) VB apps start up lightning fast.

I gave up VB because of REAL’s xplat, and also for REAL’s better class structure. And I won’t look back, I love REAL/Xojo. But I really miss VB’s speed and agility.

Are you SURE you used VB for 20 years? This is the Microsoft product, right?

LLVM. Coming soon to a programming language near you.

[quote]I’m sorry… 0.66 vs 0.70 seconds??? and you are complaining? that could be “noise”…

and without publishing both the VB and XOJO code… you statement has no merit… sorry[/quote]

I have do the test with an algorithm published by Bob Zale, PowerBasic benchmark .

Code Xojo:

[code] #pragma BackgroundTasks False

Dim x As double
Dim y As Double
Dim i As int32
Dim t As double

x = 1
y = 1.000001
t = Microseconds

For i = 1 To 100000000
x = x * y
Next

t = (microseconds - t)/1000000

Affichage.Text=“X= " + str(x) + " T= " + format(t,”#0.00")+ " Sec"[/code]

Try adding these as well:

#pragma DisableBoundsChecking #pragma DisableAutoWaitCursor #pragma StackOverflowchecking False #pragma NilObjectChecking False

Try use Xojo script (so the future compiler) is really much faster

[quote]Try adding these as well:

#pragma DisableBoundsChecking
#pragma DisableAutoWaitCursor
#pragma StackOverflowchecking False
#pragma NilObjectChecking False[/quote]

No any change, still same result.
under Borland C it takes 0.336 sec.

Have you done the following Benchmark too?
VB6 - Visual Basic .Net 2013

Also, are you running a compiled app or in the IDE? A compiled app will be faster.

Interesting discussion. It’s also made me have a look at XojoScript…

MacPro 2.66 10GB RAM 0.84 secs
MacPro 2.66 10GB RAM 0.84 VMWare XP 2.5secs

iMac i5 3.2 16GB RAM 0.82 secs
iMac i5 3.2 16GB RAM VMWARE 0.83 secs

Core2Duo 2.4 Win7 2.54 secs

Running from the IDE 7.5secs

So would say that virtualisation has come a long way since my 2006 MacPro, but general processing speed has not in this case.

Using Xojoscript
MacPro 2.66 10GB RAM 0.46secs

It’s nice to see that XojoScript is getting close to the C benchmark

After nearly two decades of programming with VB from version 1.0 on MS-DOS to 6.0 on Windows XP, I made the switch to REALbasic.

Selection of a software development tool is not just about performance. It is more about what you can do with it and how easily those things can be done. Stability of the IDE and compiled applications is also very important. So is support from the company and community behind the software development tool.

Regarding performance of applications compiled with Xojo, there is rarely a perceivable difference when compared to VB 6. Even in those cases, the typical user will not notice. In the very rare case where they might, work with the Xojo team to tweak the performance of that particular operation, use OS API calls and/or code that functionality with a low-level language where more control and performance are available.

The cross-platform capability and superb support from Xojo, Inc. and community trump whatever performance differences can be measured between Xojo and VB 6.

Sure am, I got a copy of VB1 in 1993. They still associated the name with another product called Ruby. It was interpreted, had no DB support and a lousy pseudo compiler.

[quote=114093:@Djamel AIT AMRANE]I have do the test with an algorithm published by Bob Zale, PowerBasic benchmark .

Code Xojo:

[code] #pragma BackgroundTasks False

Dim x As double
Dim y As Double
Dim i As int32
Dim t As double

x = 1
y = 1.000001
t = Microseconds

For i = 1 To 100000000
x = x * y
Next

t = (microseconds - t)/1000000

Affichage.Text=“X= " + str(x) + " T= " + format(t,”#0.00")+ " Sec"[/code][/quote]

Besides the need to compare built applications because in both VB6 and Xojo running in the IDE uses debug hooks that slow things down, two remarks :

  • You did not post the VB code. While I am sure it is not drastically different, coding style does count in execution time. For instance, using UInt16 for i may shorten the loop execution time.
  • This test only measures for-next, double assignation and multiply. What about string operations, more complex mathematical operations, screen display, disk access, and so on ? A program is extremely rarely limited to a loop with a multiplication.

Comparing VB6 and Xojo is fair, but Torsten is right, testing VB .NET could be in order. And I remember not too long ago testing a similar for next benchmark with XojoScript which gave blazing fast results. So in case of heavy mathematical operations, one could rely on XojoScript to accelerate the process.

Finally, and as interesting as benchmarks are, the issue for complex programs will always remain good optimization. No matter how fast is a language, spaghetti code will always bring it to a crawl :wink:

Ultimately, what often counts most is the impression of speed your user interface emanates.

Sure VB appeared in the early 90’s
VB 2.0 was in 1992 and VB 3.0 summer 1993
I used 3.0 way back when

Um, that’d be me. I began writing this when I was comparing different Linux distributions. I thought it might help compare different Xojo platforms (32bit versus 64bit Linux) and more. It’s rough but I find the results interesting.

ctBenchmark version 1.6
ctBenchmark for Mac
ctBenchmark for Linux
ctBenchmark for Windows

[quote]Have you done the following Benchmark too?
VB6 - Visual Basic .Net 2013[/quote]

I have no test under VB.Net, i am merging from VB6 to Xojo.