Logo by Sockratease - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Visit the official fractalforums.com Youtube Channel
 
*
Welcome, Guest. Please login or register. March 28, 2024, 08:16:10 PM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: WinBuddha v0.1  (Read 1733 times)
0 Members and 1 Guest are viewing this topic.
ker2x
Fractal Molossus
**
Posts: 795


WWW
« on: September 01, 2013, 08:58:06 PM »

I finally packaged a windows version of buddha++ that was developped by emilio and me.
It is an easy to use (and hopefully fast) multithread buddhabroth generator in Qt/C++.


There is a huge bug with the mouse, you currently can't zoom correctly with the mouse.
But the keyboard is ok :
arrow to navigate, + and - to zoom.

URL : http://fractals.s3.amazonaws.com/winbuddha/winbuddha-v0.1.zip
Uglyfied source code here : https://github.com/ker2x/buddha

Please report bug, other than the mouse bug smiley
Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #1 on: September 02, 2013, 09:03:12 AM »

Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
knighty
Fractal Iambus
***
Posts: 819


« Reply #2 on: September 02, 2013, 05:56:36 PM »

Great app! Thank you very much ker2x. Yesterday, I was trying to compile the github version without success.
 Wow thanks sign
Logged
ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #3 on: September 02, 2013, 06:25:46 PM »

Yes, we always had trouble to make it run correcty on windows.
The original software is more a sandbox than a real software, it include some test with openCL and Boost.
I stripped the original software to something that can be distrbuted without requiring to install a few GB of SDK  cheesy
Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
lycium
Fractal Supremo
*****
Posts: 1158



WWW
« Reply #4 on: September 02, 2013, 09:38:31 PM »

had a little look through the code, found this funny:

Quote
I don't know very much about the teory under this optimization but I think is implemented quite well..
how can a software engineer possibly be so optimistic?!  shocked
Logged

ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #5 on: September 02, 2013, 11:58:44 PM »

how can a software engineer possibly be so optimistic?!  shocked

hehe.
Most of the code is from emilio.
I think there is some comment in Italian too.

I don't know much either about the Metropolis-hasting algorithm.
I think that "quite well" is : good enough to produce the expected result smiley

I switched to Visual Studio (but i'm trying to keep the code standard enough so it may be portable)
So i created a new repository : https://github.com/ker2x/WinbuddhaVS/

I cleaned some more code, switched to std::complex, added some optimisation.

Code:
    double cr = begin.real();
    double ci = begin.imag();
    double ci2 = ci*ci;

    //Quick rejection check if c is in 2nd order period bulb
     if( (cr+1.0) * (cr+1.0) + ci2 < 0.0625) return -1;

     //Quick rejection check if c is in main cardioid
     double q = (cr-0.25)*(cr-0.25) + ci2;
     if( q*(q+(cr-0.25)) < 0.25*ci2) return -1;


     // test for the smaller bulb left of the period-2 bulb
     if (( ((cr+1.309)*(cr+1.309)) + ci*ci) < 0.00345) return -1;

     // check for the smaller bulbs on top and bottom of the cardioid
     if ((((cr+0.125)*(cr+0.125)) + (ci-0.744)*(ci-0.744)) < 0.0088) return -1;
     if ((((cr+0.125)*(cr+0.125)) + (ci+0.744)*(ci+0.744)) < 0.0088) return -1;

It very ugly, i did that before switching to std::complex.

Now that i switched to std::complex i can probably use this instead (it's fortran code) :
Code:
IF(((ABS(c - CMPLX(-1,0) )) < 0.25) .OR. ((ABS( 1.0 - SQRT(1-(4*c)) ))  < 1.0 ) ) THEN

I'll try tomorrow.
Good night  snore
Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #6 on: September 03, 2013, 08:11:22 AM »

I uploaded a new version : http://fractals.s3.amazonaws.com/winbuddha/winbuddha-v0.2.zip
Actually it should be 0.1.1 because i still have the mouse bug and there is no functionnality change, but there is a lot of code change.

It's compiled with VS2010, please report if the app doesn't run (missing dll?)
Thank you.

Edit : it now require a cpu with SSE2 support
« Last Edit: September 03, 2013, 10:33:47 AM by ker2x » Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Winbuddha v0.3 with optimization + mouse bug fix Announcements & News ker2x 2 3002 Last post September 05, 2013, 06:38:13 PM
by ker2x
Winbuddha v0.31 mouse bugfix (hopefully) Announcements & News ker2x 11 2726 Last post September 13, 2016, 05:34:13 PM
by Chillheimer

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.206 seconds with 25 queries. (Pretty URLs adds 0.009s, 2q)