Welcome to MilkyWay@home

Posts by Shane Reilly

41) Message boards : News : MilkyWay@home screensaver coming soon (Message 40889)
Posted 12 Jul 2010 by Shane Reilly
Post:
Update: the screen-saver demo should be available within about a week. I have taken a crash course in rotation matrices, quaternions, vectors, and other head spinning math and the result is a camera that should allow the kind of automation needed for this screen saver. I will post to the news thread as soon as it is available.

Other news: I have spoken to several team members about ideas and it may be possible to allow motion in all versions of the screen saver without >1% or 2% overhead using pregenerated frames for transitions.

I will also include the option of downloading all currently used SDSS wedges superimposed for manual viewing. Some screenshots:


Wedges as viewed from a distance of about 100 kpc.


Wedges as viewed from Earth.
42) Message boards : News : New Website Coming Soon (Message 40880)
Posted 11 Jul 2010 by Shane Reilly
Post:
I agree. I think we should change "comment" to "more" since clicking on this does not actually take you to the comment interface.
43) Message boards : News : N-Body Simulation of the Sagittarius Stream (Message 40863)
Posted 9 Jul 2010 by Shane Reilly
Post:


N-Body simulation based on data compiled by David R. Law et al.



Here the simulation is shown intersecting wedge 82.

For those interested in learning more about the origin of the Sagittarius Stream, the above animation is based on data from an N-Body simulation created by David R. Law et al. which shows how the stream may have formed. The simulation was rendered using the same engine that will be used in the MilkyWay@Home screensaver.

A MilkWay@Home team member, Ben Willet has written a brief summary about the simulation and what our next MilkyWay@Home project will be!

This visualization shows the two different components of the Milkyway@home project. The circular wedge that you see is a 2.5 degree wide stripe of SDSS data. The bright overdensity in the stripe is composed of stars that have been torn off of the Sagittarius Dwarf Galaxy (Sgr) as it orbits around the Milky Way. The main goal of the project is to analyze this data stripe to determine the most likely parameters of those stars (e.g. how wide the overdensity is, where it is going, and how many stars are in it). To accomplish this goal, each user's computer analyzes a stripe with a certain parameter set, and determines how well those parameters match the data. These results are fed into the BOINC platform, which takes actions to decide the next parameter values, and chooses the best answer.

The rest of the visualization is a prelude to an upcoming BOINC project. The stars in motion are taken from an N-body simulation of the Sgr Dwarf Galaxy. We take the currently known position and velocity of the Sgr Dwarf Galaxy and run it back in time for anywhere between 3 and 6 billion years within a gravitational field that approximates the Milky Way. We then place a spherical group of stars at that predicted location, and run it forward to the current day. The Milky Way's gravity tears apart the dwarf, causing it to flow out into long streams of stars. It is these stars that are contained within the data wedges. The ultimate goal of this project is to utilize N-body simulations over BOINC to find the best fit model for the Milky Way's gravitational field. The ability to do N-body simulations over BOINC is currently being developed by our team of astronomers and computer scientists, and will soon be available to users.

References:

Law, Johnston & Majewski ApJ 619 807L 2005. http://arxiv.org/abs/astro-ph/0407566 Cole, et al.
ApJ 683 750C 2008. http://arxiv.org/abs/0805.2121
44) Message boards : News : MilkyWay@home screensaver coming soon (Message 40522)
Posted 18 Jun 2010 by Shane Reilly
Post:
"To be honest I was hoping something like the Einstein@home screensaver would show up for Milkyway@home..this new screensaver doesn't look very exciting to have on a screen..although it is something I guess."
-ztmike


Thank you for the feedback. I am glad to hear from so many people as determined as I am to make an interesting screensaver for MilkyWay@Home. I will do my best to answer your questions while giving a recap of everything proposed so far:

What sets this screensaver apart from Einstein@home and similar simulations:

The emphasis in this screensaver has been to show application progress while keeping a space theme and showing a realistic view of the stars. The stars are rendered using incremental Gaussian blurs (star-blurs that brighten when overlapped) instead of pixel-discs (which are used in most modeling apps including Einstein@home). The result is intended to resemble a photograph from a telescope. Look-up tables allow this effect to be done with nearly no additional CPU overhead over that of pixel-discs. By comparison, applications using similar blur effects without look-up tables, color optimizations, or GPU acceleration render 100,000 stars at about 1.5 fps on my machine using 100% of the CPU, hence the need for pixel-discs. This library does the same job without GPU acceleration at 54 fps. When you say "something like the Einstein@home screensaver," what features were you interested in?

"...does the screensaver take live data that is being crunched or already crunched or just showing random things on screen?"


Features:

The plan for the screensaver as is, is to alternate between 3 types of views. The first would show a far-off view of the wedge at random to put things into perspective and keep pixels from burning into the screen (always helpful for CRT's). This is where a Milky Way model could be shown in the background if people are interested. The second view would pan across the wedge as it is seen from Earth to give a realistic perspective of what it would look like if the viewer were able to see every star in the wedge from our solar system. The third would be the progress indicator: a top-down view of the wedge that shows progress by dimming stars sections that are completed and flickering stars that are being calculated. It will also have progress indicators and coordinates printed in the corner of the screen at this view. Below is a screenshot of the Milky Way from Celestia. Celestia uses similar techniques to render the Milky Way as those that would be used in the MilkyWay@Home screensaver.


(taken from Celestia application)

"Will the people on Milkyway GPU have the screensaver option also? I imagine they could use their CPU alot more for the screensaver."


The original plan was to allow flying trough the wedge, but given only 1% CPU overhead, this is not plausible for most machines. The application requires 2% of the CPU per frame each second for a 3GHz processor. From what I understand, only a few percent of the CPU is used to process MilkyWay@home data for those with double precision multi-threading GPU's. This would mean that the screensaver could fly around at at least 30 fps without effecting the work-load at all if you have this type of GPU. If people are interested, I can add this functionality for machines capable of using it.

"Edit: Can you upload a video sample of the screensaver?"


Yes, but perhaps it would be better to upload demo applications for Linux, Mac and Windows so that everyone can see what this version of the screensaver would look like on their machines. I can make this available relatively soon along with a link to the code used if people are interested. Another option is to put the screensaver in the main application as-is and see what people think of it at each phase. I think a demo might be best for now though since integration may take somewhat longer.

In addition to the Milky Way as a background and the status indicators, I am interested in hearing whether or not people feel that adding movement for computers that are able to handle the load would be more appealing.

As for other suggestions, the means are likely available to implement most ideas for the photo-switching version of the screen-saver without significant overhead so suggestions are welcome.
45) Message boards : News : MilkyWay@home screensaver coming soon (Message 40488)
Posted 17 Jun 2010 by Shane Reilly
Post:
"Pictures are interesting, but for a user like myself, don't really understand what the wedges are. I'm guessing #1 is a wedge of space as seen from earth, thin at the centre and wide (rectangle) on the rim, and not like a cheese wedge, where it's just as thick at the centre as it is on the rim. Meanwhile, #2 is the wedge rectangle view as seen as from earth, and not like the cheese wedge seeing the rectangle from centre of circle to edge of circle."
-Joses


These are great questions. I will try to answer them while giving a concise overview of the project.

One of the aims of the MilkyWay@Home project is to analyze star density over specific regions to help find likely stream locations. Finding streams gives clues to the structure and origin of the Milky Way Galaxy. The sky "wedges" used to find these structures are taken from the Sloan Digital Sky Survey (SDSS). Only the F-class stars in the wedges are used for density surveys because they present the least amount of error when calculating star distances.

Each time a computer that is signed up with the MilkyWay@Home project takes on a job, it analyzes a single stripe across the sky, or wedge, taken from the SDSS survey (wedge 82 is shown in the above images). SDSS names the wedges by number.

The wedges are completely flat in the Earth-view image. The curves seen in the map below are due to the curvature of the graph. The SDSS telescope scans a uniform portion of the sky while panning across a wedge. This size is limited by the width of the lens and the amount of magnification.

The "over-head view" shows what the wedge would look like if you traveled about 1 million light-years away from Earth and looked back on only the stars seen in that wedge. They have a curve to them at this angle because the telescope can only see F-class stars that are about 150,000 light years away. Stars beyond this are dimmer than the SDSS telescope is able to make out.


SDSS Telescope (image from SDSS)


SDSS Wedges displayed in galactic coordinates - wedge 82 is one of the bottom 3 stripes (image from SDSS)

Have you looked at Einstein @ home? it has an interesting idea of showing where it's doing calculations in the sky, but it is only one view, while yours sounds very ambitious with 3 views in it.


Einstein@home uses constellations to help visualize galactic positions. The MilkWay@Home screensaver shows multiple angles using Cartesian coordinates. The intention is to allow users to visualize: where the wedges originated from, what the data actually represents on a galactic scale, and how the integration process is applied to the data.

For more information on the project, Matthew Newby has assembled an MS PowerPoint slideshow that can be accessed here.
46) Message boards : News : MilkyWay@home screensaver coming soon (Message 40415)
Posted 15 Jun 2010 by Shane Reilly
Post:
I will be loading the code to a repository soon. We are migrating all our code to github.com even as I write this. The graphics library used to render the stars is multipurpose, so it will be listed separately on github under the GPL in case anyone wants to use it for their own projects and research.

The consensus so far seems to be credits over effects which I can understand since most of the time the screensaver will not be viewed. At the moment our plan is to alternate between 3 angles with a fade-in transition. This will easily use less than 1% of the CPU. Here are the proposed angles (10 seconds each):

1) over-head view - this is where progress will be shown and current area being integrated will be made to flicker




2) earth view (pans across entire wedge slowly)




3) far-off random view showing scale compared to the galaxy - this is where I would put the galaxy backdrop

If anyone would like to suggest additions or modifications to this list or other details of the screensaver (now or after the first release becomes available) feedback is always welcome.
47) Message boards : News : MilkyWay@home screensaver coming soon (Message 40358)
Posted 13 Jun 2010 by Shane Reilly
Post:
I realized I did not mention the 3d to 2d conversion overhead. Since look-up tables are used, the overhead is there, but it is manageably small. The difficult part is quickly representing the sheer magnitude of the data (100,000 stars), which is handled by the custom 7-bit graphics engine (the 8th bit is used to perform 4 pixel sums simultaneously instead of 1 at a time).

The programming overhead for 3d rendering is about 20 lines of code in 1,119 total lines. 60% of the code is the blitting engine and graphics library, another 30% is code for graphics display look-up tables. The graphics library will not interact with work being done by the GPU's because it is designed to rely 100% on the CPU. This fact along with the need for a fast rendering method meant writing a display engine from scratch, something I luckily have a lot of experience with! The Simple DirectMedia Layer (SDL) library takes care of setting up the display mode and checking for keystrokes, etc.

If we do a a photo-shoot of different views over/in the wedge in 3D, changing images every 10 seconds with fade-in, the CPU overhead would be about 0.5%. Effects like star flicker for sections being worked on might add another 0.5%. For another 0.1% I can add a backdrop of the Milky Way Galaxy in the form of about 300 diffuse spherical halos, but I wonder if it would be distracting. These seem more like the numbers people had in mind so I thought I would throw the idea out there.

The frames-per-second overhead is as follow:

. . . . . . . . . . . . . . . . . . 3D . . . .. 2D

. 1x1 pixel stars . pixel summing . 80. fps . . 115. fps
. 4x4 pixel stars . pixel summing . 54. fps . .  67. fps
. 8x8 pixel stars . pixel summing . 40. fps . .  42. fps
16x16 pixel stars . pixel summing . 21. fps . .  21. fps

48) Message boards : News : MilkyWay@home screensaver coming soon (Message 40352)
Posted 12 Jun 2010 by Shane Reilly
Post:
"Single Pixel Rendering looks purty :)

Edited to add : what's the performance loss from A-Z?"

-Aaron Finney



The application is far enough along now to give an answer to this. I do not expect things to get much faster. Now that everything is in look-up tables, rendering only takes a handful of multiplications and divisions per star even at 16x16 px. The rest is memory copying and operations with very little cost. These values are based on 100% CPU usage, so multiply the frame-rate by the desired CPU percent to get the expected frame-rate.

 . 1x1 pixel stars . overwrite . . . 81. fps . 100%
 . 1x1 pixel stars . pixel summing . 80. fps .. 99%
 . 4x4 pixel stars . pixel summing . 54. fps .. 67%
 . 8x8 pixel stars . pixel summing . 40. fps .. 50%
 16x16 pixel stars . pixel summing . 21. fps .. 26%


The problem with 1x1 stars is that they do not allow boundary blending, so even if the images look good in a still-frame, they look noticeably choppy when moving slowly across pixel boundaries no matter what the frame-rate is.

Transparency takes time similar to pixel summing on my machine. It might be significantly faster on machines with hardware-accelerated blitting.

Unfortunately, I think it would require a programmable graphics card to provide on-board accelerated support for pixel-summing. If you have one of these, then odds are it is already being used to integrate for the Milky Way Project so providing such support might be counter-productive.

The human eye can see at about 60-70 fps so we have the following options in the interest of speed:

a) render at various angles without motion during transitions (stationary rendering takes close to 0% of the CPU)
b) only move every 30 seconds or so and use ~25% of the CPU only during these brief transitions, 0% the rest of the time (stationary)
c) move very slowly
d) darken most of the stars, showing only the nearest ones while moving, all stars while relatively stationary over the wedge
e) remove most of the stars, showing perhaps 10,000 instead of 100,000
f) learn to appreciate chop

Here are the comparisons of the 5 test runs:

1x1 pixel (overwrite):
http://www.rpi.edu/~reills2/milkyway/1x1_pixel_destructive.png

1x1 pixel (pixel summing):
http://www.rpi.edu/~reills2/milkyway/1x1_pixel.png

4x4 pixel (pixel summing):
http://www.rpi.edu/~reills2/milkyway/4x4_pixel.png

8x8 pixel (pixel summing):
http://www.rpi.edu/~reills2/milkyway/8x8_pixel.png

16x16 pixel (pixel summing):
http://www.rpi.edu/~reills2/milkyway/16x16_pixel.png
49) Message boards : News : MilkyWay@home screensaver coming soon (Message 40348)
Posted 11 Jun 2010 by Shane Reilly
Post:
That is convenient, thank you for the tip.

There are a few options for navigation. The proposal made was to start zoomed far out on the wedge being worked on and then navigate to the stream-estimations and current zones being integrated. I have tried many possible intermediate simulation effects.

It is possible to take a tour just over the surface of the wedge while navigating. It creates an effect similar to a flight simulator without offering the security of a safe landing place.

It is also possible to add a toggle for the interactive mode that is used to test it (by pressing F12 perhaps) if people are interested.

The stars being worked on can be made to flicker and the stars completed can be dimmed.

Other ideas are welcome as well as suggestions on these.

Looking back on the galactic halo from inside wedge 82 (full version here):

50) Message boards : News : MilkyWay@home screensaver coming soon (Message 40346)
Posted 11 Jun 2010 by Shane Reilly
Post:
We want people to be able to give as much CPU time as they want to the project, so I think it is important that users can easily define the percentage of CPU that they want to devote to the screensaver. There will be the option of using the default BOINC screensaver for those that want 100% of their CPU time to go to the project, but does anyone have any recommendations on where the options should be? An ini file would be the simplest method, but a more user-friendly interface might be preferable.
51) Message boards : News : MilkyWay@home screensaver coming soon (Message 40343)
Posted 11 Jun 2010 by Shane Reilly
Post:
Here is another screenshot. It is a far view of wedges 16 and 82 with a bright spot representing the galactic center. The sun is located were the wedges meet. Click here for the full version of the wedge image.



Edit: this image was based on the mistaken assumption that wedge data was stored in ra/dec and magnitude. It was later confirmed that it is actually stored in l, b and distance coordinates. The result is that the wedges appear logarithmically elongated at unexpected angles. The issue is resolved now.
52) Message boards : News : MilkyWay@home screensaver coming soon (Message 40329)
Posted 10 Jun 2010 by Shane Reilly
Post:
I should probably mention they look different if they are zoomed in. Some browsers blend the pixels while shrinking the image. I will have more wedge images soon. I am working on visualization of an N-body simulation in addition to this.
53) Message boards : News : MilkyWay@home screensaver coming soon (Message 40318)
Posted 10 Jun 2010 by Shane Reilly
Post:
"If the whole thing moves slowly, perhaps you could limit it to 1fps or so to get a constant framerate and limit CPU usage as much as possible? Probably best to make it a serverside preference."
-Emanuel


The frame-rate may not be constant at all times, but the motion will be on a timer so the worst that will happen is that things looks a little choppy at times. Chop is also a result of faster motion, so as you pointed out slower movement will look fine at possibly even 8 fps. 1fps would not leave much room for visual effect, but it can be selected implicitly by choosing 1% CPU usage. To keep things simple for most users, I think it would be best to make a frame-rate cap adjustable in an ini-file.

The maximum server-side CPU usage could be something like 15% with the default at maybe 5 or 10%. Faster computers will not need the entire amount since the frame-rate will be capped at 15 or 30 fps by default. Television screens display about 24fps.
54) Message boards : Application Code Discussion : Screensaver on its way (Message 40303)
Posted 9 Jun 2010 by Shane Reilly
Post:
I am moving this thread to the news section for user feedback.

http://milkyway.cs.rpi.edu/milkyway/forum_thread.php?id=1794
55) Message boards : News : MilkyWay@home screensaver coming soon (Message 40273)
Posted 7 Jun 2010 by Shane Reilly
Post:
The screensaver is almost fully optimized. For 8x8px-accurate blur circles I get 26 FPS rendering 100,000 stars on my Dell Inspiron 1501, AMD 64 Athlon X2, using a mainboard video card w/shared memory. For those of you that don't know, this laptop is not made for graphics. I am currently optimizing the floating-point routines to use fixed point math and trig-function look-up tables. From a few tests, it looks like it might double that frame-rate (fingers-crossed). Beyond that, optimization would require assembly-code which I am avoiding, because this application currently compiles on any platform and I hope to keep it simple, but fast.

I kicked a number around with the team. For now, we are planning to cap the screensaver CPU-time at around 10 or 15%. Luckily, the screensaver does not have to show all 100,000 stars at once, so by limiting the view distance for the majority of the time, the screensaver should be able to maintain its frame-rate. For those that need more speed, I am building in options to manipulate the blur-circle radius, average luminosity and cut-off distance, screen resolution, and a single-pixel rendering mode. It doesn't get any faster than single-pixel rendering, but some people prefer effects over speed.

Here are some screenshots of a frame from a simple test demo. I welcome any comments on the different modes. Transparent draws flatten the image, much like pixel-rendering, so the default setting is pixel-summed blur circles:


Pixel-summed blur circles 8x8px ( 26 fps ):

http://www.rpi.edu/~reills2/milkyway/100000%203.5%20.05.png

Sharp pixel-summed blur circles 4x4px ( 38 fps ):

http://www.rpi.edu/~reills2/milkyway/100000%201.5%20.15.png

Transparent-blit stars 8x8px (faster when graphics-card accelerated, otherwise slower than pixel-summing):

http://www.rpi.edu/~reills2/milkyway/100000%203.5%20.15%20-%20transparency.png

Single pixel-rendering ( 70 fps ):

http://www.rpi.edu/~reills2/milkyway/100000%20-%20single%20pixel.png
56) Message boards : News : MilkyWay@home screensaver coming soon (Message 40197)
Posted 4 Jun 2010 by Shane Reilly
Post:
Hi everyone. I am new to the MilkyWay@home project and will be working with the RPI group this summer. I am currently busy with the visualization of the data. Below is a screenshot of one of the wedges being worked on as it appears in the screensaver (no alterations). I am currently optimizing the screensaver draw-routines to get a decent frame-rate while displaying realistic blur circles for the stars. Suggestions are welcome.




Previous 20

©2024 Astroinformatics Group