Arctic Sea Ice : Forum

AGW in general => Developers Corner => Topic started by: Jim Hunt on March 09, 2013, 10:23:50 PM

Title: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 09, 2013, 10:23:50 PM
Just in case I can interest anyone in the concept when I'm at The Arctic Summit (http://forum.arctic-sea-ice.net/index.php/topic,105.0.html) on Tuesday, I've set up a placeholder open source project on Google Code, catchily entitled "The Distributed Arctic Sea Ice Model (https://code.google.com/p/dasim/)", or DASIM for short.

Any questions?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 10, 2013, 12:11:58 PM
I was toying with the idea of handing out a "flier" to anyone in Oslo who might be interested. This is what I've come up with so far:

http://econnexus.org/dasim (http://econnexus.org/dasim)

What does the team think?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on March 10, 2013, 12:49:12 PM
How would a flyer do the 'during' video part?

I am not sure what you are planning on doing. It sounded like you might be able to tweak initial conditions but if you are just running the models with tweaked initial conditions, that is just an initial condition ensemble with an existing model. Why would a group unfamiliar with the model do better than the researchers who have extensively studied what works with the model? Tweaking the coding of the model or even just adjusting parameters rather than initial conditions is going to require pretty deep understanding of the model.

A collaborative effort sounds good and I don't want to be overly critical. However, I suggest there has to be some realistic aim that can be fulfilled, ideally the aim should be one where 'we' are better able to do it than anyone else. I think we would need a lot of knowledge of a model before we come anywhere close to that. Models can easily be half a million lines of code so are very complicated beasts.


'we' - err,  who am I kidding? I wouldn't be any use despite a fair amount of knowledge about CPDN (for a participant cruncher).
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 10, 2013, 02:03:57 PM
A hasty first draft of a "flier" is at the bottom of that page now Crandles, albeit without any "video"!

What do you reckon?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on March 10, 2013, 06:05:09 PM
Quote
The existing models can't tell you.

This one can (real soon now!)

What justifies that you will be able to something that other models have failed to do? If you believe you have something then this should be explained somewhere. Otherwise how do you justify that not being a bit insulting to modelers?

Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on March 10, 2013, 08:43:25 PM
I asked a few questions over on a CPDN board. Another moderator, Mo, seemed to agree with my assessments given above. She added a few thoughts:


Quote
Probably very hard ... Well, NASA is having a hard time. The Met Office has been bashing away at the Unified Model for two decades if I'm not mistaken.


If they need any help with the modelling, here's a link to to the climateeducation course:

http://reciprocatesite.conted.ox.ac.uk/ (http://reciprocatesite.conted.ox.ac.uk/)

Say that you have to take Part 1 of the course first and can then go on to Part 2 which is intended for people who wish to learn to implement PRECIS regional modelling. Tell them that the Met Office runs short courses for people who want to set up their own regional models using PRECIS. Mostly the people who attend these courses are meteorologists in their own countries but they might be accepted by the Met Office if they've taken the course and are proficient in Linux.

I suspect that second course would only be relevant if you decided on using the PRECIS regional model.

I am sure you can find the CPDN site to look for very basic introductions like
http://climateprediction.net/content/modelling-climate (http://climateprediction.net/content/modelling-climate)
but the reciprocate site link above looks more relevant.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 11, 2013, 01:17:37 AM
Hi Crandles,

I've just arrived in my hotel room in Oslo, after a long days travelling. There was a torrential downpour of sleet as I headed up the M5, which had turned to gentle flurries of snow by the time I got to Bristol Airport.

The language you have reservations about was an attempt to draft something that might catch the attention of any business types I might be able to hand a piece of paper to on Tuesday, and at least persuade them to click a link or two.

What would you suggest instead?  I have no pretentions about being (or becoming) a climate modeller by the way. I do program computers for a living though. Any climate modelling expertise that the project might ultimately include would need to come from elsewhere.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on March 11, 2013, 03:50:18 AM
I would be pushing an impacts study:

Models are doing poorly at predicting when seasonally sea ice free and different methods get large range of answers. By? 2050 Ref (http://www.carbonbrief.org/blog/2013/03/open-waters-in-the-arctic). 87% on Neven's forum (http://forum.arctic-sea-ice.net/index.php/topic,80.0.html) think before 2020! Even if not all experts are convinced it will happen this decade, with models doing so badly, some preparation is a sensible precaution.

We should be running climateprediction.net / weather @ home type simulations where ice melts out during summer to see what adverse weather becomes more common. Northern Hemisphere countries are running short of time if the conclusions suggest we should build more dams to cope with longer droughts because planning and building take time. Similar situation for flood defenses.

Note: maybe I am only at the stage of wondering if such a project is feasible.

The vastly different timescale between 2015 and 2050 seems worth drawing attention to.

Sorry if you are out of time to draft or do anything with this and for mis-understanding what you wanted.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Artful Dodger on March 11, 2013, 04:19:26 AM
What would you suggest instead?  I have no pretentions about being (or becoming) a climate modeller by the way. I do program computers for a living though. Any climate modelling expertise that the project might ultimately include would need to come from elsewhere.

Hi Jim,

Science always proceeds in 3 Stages:
It's pretty clear from the dismal modeling results to date that we are firmly stuck at Stage 1.

What I would suggest is a statistical approach to sea ice description. Enumerate all the physical factors that effect sea ice. Create a huge covariance matrix. Find all correlation coefficients, and identify any factors that show either strongly positive and strongly negative correlations.

Produce a single equation in the form of a multiple regression that describes the progress of arctic sea ice evolution over the last 34 years. When this equation produces a lower standard error than the best models, it's time to restart modelling efforts.

But now, we would know which physical parameters to model. And we'd know which data needs to be collected. At that point, we could predict sea ice (the 'dependent variable') based on observations of the known independent variables. That's Science.

Good luck in Oslo! We could use some good luck at this point. Even 1997 would have been tight...  :'(
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 11, 2013, 11:35:21 AM
@Crandles - Unless I misunderstood, you suggested previously (http://neven1.typepad.com/blog/2013/01/piomas-january-2013.html?cid=6a0133f03a1e37970b017d403e9db4970c#comment-6a0133f03a1e37970b017d403e9db4970c) that CPDN don't seem to be amenable to running the sort of tests you'd like to see happening?

Beyond that Lodger seems to be suggesting that something fundamental must be missing from the current models? Even cloning CPDN for our own purposes wouldn't necessarily get us a whole lot further?

Whilst we ponder those imponderables, here's my current IT setup for the Arctic Summit here in Oslo. Please note the Raspberry Pi running CICE, albeit only for 1997. Those were the days!

http://econnexus.org/projects/the-distributed-arctic-sea-ice-model/sea-ice-pie/ (http://econnexus.org/projects/the-distributed-arctic-sea-ice-model/sea-ice-pie/)

P.S. TypePad's self references don't seem to be working properly  :(
Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on March 11, 2013, 01:45:37 PM
@Crandles - Unless I misunderstood, you suggested previously (http://neven1.typepad.com/blog/2013/01/piomas-january-2013.html?cid=6a0133f03a1e37970b017d403e9db4970c#comment-6a0133f03a1e37970b017d403e9db4970c) that CPDN don't seem to be amenable to running the sort of tests you'd like to see happening?


I don't think they have given it much if any serious consideration. Ideas need expert consideration to ensure the best ideas are pursued. So listening to amateurs isn't really the done thing. If I thought it had been considered and was not suitable then I would accept that and not be thinking of trying to push it.

To me, it seems that modelers believe their models telling them dates of 2040 ish. While many of us believe the volume extrapolations, I think both we and modelers should accept there is some uncertainty. If there is uncertainty then preparation should ideally be in time for the earliest date. We have gone past that so it looks to me like it deserves some pushing.

I am not sure how to do that pushing effectively. Modelers seem not to believe the level of uncertainty in the timing. As for politicians, I see examples of scientists telling them we need to consider earlier dates and this being waved aside based on earlier advice that it won't happen before 2030. An example of hearing what they want to hear: In a way politicians do not want to act rashly and find it was unnecessary. Far better for them to rely on old advice as the reason they didn't do much. Encouraging further research to see how much action might be required seems a sensible message that could be sold to them. However, whether they would take action to direct funding bodies to fund suitable research or stick to a rely on earlier research to absolve themselves approach isn't clear to me.

Is this situation a disaster waiting to happen with no-one taking action or even research? Some people almost seem to be hoping for a disaster to kick the population into action. I don't want to join that club nor try to push inappropriate research so I am trying to air the idea for reaction.



Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 24, 2013, 11:11:49 AM
Quote
https://forum.arctic-sea-ice.net/index.php/topic,108.0.html

which would seem to be the best place to continue this discussion. You'll see that RasPi clusters do get a mention!

Don't see any talk of clusters , just you Pi experiment Olso.

What did I miss?

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 24, 2013, 01:12:12 PM
Sorry Kim.

On sober reflection my language was somewhat confusing! I was referring to the "Lego" link on the thread you have arrived from to the University of Southampton's "Raspberry Pi Supercomputer (http://www.southampton.ac.uk/~sjc/raspberrypi/)"
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 24, 2013, 07:38:30 PM
Thanks Jim, interesting link.

Most of the power of pi is in the GPU, not sure how much use that would be in the context of a cluster.

Cross-platform code like CICE won't take advantage of it without some specific, l33t recoding.

I've always fancied building a linux cluster but never had the need/motivation.  If I did, I'd probably chose something better than Upton's finger-in-a-pie.

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 26, 2013, 11:52:26 AM
My pleasure Kim,

I don't suppose you happen to know an expert in "specific l33t recoding" do you?

I haven't run any benchmarks yet (unless you count CICIE itself) but the Raspbian flavour of GNU Fortran is reputed to use "hardware floating point" at least.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 26, 2013, 02:14:53 PM
Well if they have gone that far with Ripian it maybe worth a second look.

That means there is sufficient specific support for whichever ARM core they are using for it to be using the FPU.  That means GCC is well tuned to that hardware platform.

Since these chips are contending for mobile market their devs have an interest in cooperating and ensuring they get gcc support.

I saw some time ago discussions of using GPU as well.  Sadly that's R-Pi starts to fall down. All that is in the FPG array the code of which is a propitiatory binary file. No way is anyone going to get the slightest info on what that does, let alone code.

That's why I got disinterested in playing with Pi.  So much of the hardware of Pi is effectively closed source firmware implemented on chip, it shuts you out.

I don't think the Broadcom chip was a very good choice in that respect but since Upton works for them, the whole project is a marketing exercise for them all wrapped up as a non-profit educational project, anyway.

A more open platform would have had more educational value.

But all in all it's going to bring the price of these devices down which is nice.


If CICE is what you want to run, I would say the makes it the most suitable benchmark.

I would suggest taking step back and defining what you aims are before getting to much time on implementation detail.

Processing power per watt is good on Pi but you don't really need a full blown linux desktop if you want to build a number crunching cluster.

I would give close thought to how the cluster will run. The Southampton project uses some high level messaging system that looks rather inefficient and requires programming in a specific language. Don't think it would run CICE.

There are hundreds if not thousands of these small ARM/Cortex etc boards now. I suspect there's better options than Pi, but you'll need to define objectives to make the right choice.

HTH.

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 26, 2013, 11:54:42 PM
Hi Kim,

My main aim at the moment is to get some input from someone vastly more experienced at climate modelling than me!

The "Soton supercomputer" uses MPI, and as luck would have it CICE uses MPI too, for both internal parallelisation and external coupling.

Broadcom marketing exercise or not, the RasPi certainly has a high profile and a large fan club, here in the UK at least.

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 27, 2013, 12:59:16 AM
Quote
CICE uses MPI too,


That's a stroke of luck. ;)  I'd been reading the doc on CICE but I was more interested in the physics than the coding interface.

That should make it reasonably easy (depending upon skill set) to make it run on a pot of Raspberry jam.

You'd probably want to build a stripped down linux or at least set up a run level that doesn't start the gnome desktop and all its widgets.  I built a lightweight linux for ARM as a data logger and controller for my solar water heater, that takes up 16MB .

You'll want to cut out some of the cruft from Ripian I would expect.


I was a bit shocked in the video when he said it had cost 4K to put together. He also mentions Mips though-put so that may give a first guess at whether it would be in the ball park for running CICE.

a high profile and a large fan club is more an accolade to their marketing than its technical merit. The concept is great and it has been well received. But as soon as you want to do more than blink a couple of LEDs you need the Gert Board and that costs more than the Pi itself.

I was thinking of using it for an embedded project I wanted to do but quickly realised it was far too limited and inflexible in hardware terms.

Have you got access to recent CICE versions? There 4.1 is from 2010 and must be pretty out of data by now.  I don't know how accessible they are to giving access to "trunk".
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 27, 2013, 01:11:04 PM
Over on the Arctic Sea Ice blog (http://neven1.typepad.com/blog/2013/03/melting-of-the-arctic-sea-ice.html?cid=6a0133f03a1e37970b017c3823ced1970b#comment-6a0133f03a1e37970b017c3823ced1970b) NeilT offers RealClimate's "links to data, raw and processed and also the code for reconstructions and some of the GCM's."

http://www.realclimate.org/index.php/data-sources/ (http://www.realclimate.org/index.php/data-sources/)

It seems to be missing one or two things from my own list, which also includes:

http://oceans11.lanl.gov/trac/CICE/wiki/SourceCode (http://oceans11.lanl.gov/trac/CICE/wiki/SourceCode) (of course!)
https://modelingguru.nasa.gov/index.jspa (https://modelingguru.nasa.gov/index.jspa)
http://jcm.climatemodel.info/ (http://jcm.climatemodel.info/)
http://www.easterbrook.ca/steve/2013/01/simple-climate-models-to-play-with-in-the-classroom/ (http://www.easterbrook.ca/steve/2013/01/simple-climate-models-to-play-with-in-the-classroom/)
http://www.easterbrook.ca/steve/2010/07/a-portable-climate-model/ (http://www.easterbrook.ca/steve/2010/07/a-portable-climate-model/)
http://www.easterbrook.ca/steve/2009/06/getting-the-source-code-for-climate-models/ (http://www.easterbrook.ca/steve/2009/06/getting-the-source-code-for-climate-models/)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 27, 2013, 02:00:27 PM
thanks. No useful CICE links in there but a link to MODTRANS is useful. It used to be on Dr. Archer's site but it got removed.


That was where I initially got interested in climate many years ago. He used it to point out just how small a change in radiation any change to atmospheric CO2 in either direction would make. Quite an eye opener for me at the time.

How many Pi's do you think would be required to run CICE at a useful resolution?

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Robert Marston on March 27, 2013, 04:17:16 PM
This project is just begging to be crowd sourced.

Cloud computing to run the model tweaks and test against real time for accuracy (instead of supercomputers).
Web page to provide basic definitions/links to source code sites/model descriptions and history of model accuracy and use.
Outreach to university professors to ask students to submit different variations of the models (multiple projects, worldwide, hopefully).
Method for individuals small teams to submit tweaks to computer models.
Possible industry participation (re-insurers other concerned parties).

A sort of model source code and analysis freeware/cloudware that everyone owns, everyone can participate in, and everyone can track the results from designed to aid/facilitate the work being done at the world's major climate offices.

I don't know if it will be successful. We do have weather models that are very accurate where they used to be less so. And I think that those evolved as weather dynamics became better and better defined. Ice is different. We don't have many eyes on the ice when compared to weather. We don't have so many people tracking it and identifying factors that influence melt. Same with global climate change. Still a pretty esoteric and ill understood process. I think broadening the base of work/interest might be a lot of help to the scientists as seems to have been the case with general weather.

???
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 27, 2013, 04:59:10 PM
Quote
This project is just begging to be crowd sourced.

Good idea. Something like Boinc project years ago to rum global models or yeti@home  ;)


Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on March 27, 2013, 05:04:48 PM
This project is just begging to be crowd sourced.

I completely agree with this point. Also I like the idea how people are involved. Sounds much more inspiring than searching aliens or folding proteins. I have implemented 2 or 3 distributed business models and have a single advice: Get the absolute minimum thinkable running (server + client), from that point update often and early. Which means get to the heart of the problem, drop drift, salt, declination, floes, ice age, brines, leads, polynyas, seasons, ozone, etc..

And as a part time programmer: Don't spend time with existing sea ice models, they do not support parallel execution (I'd prefer to be wrong at this point), which basically means all code is unusable. Good for inspiration on how to implement a formula, but no copy&paste of structure or information flow. Single machine code is fundamentally different from multiple machines code.

I wish, I had currently more time, may be next winter, w'd love to work on an webgl interface.

"Every software should get developed top down, except for the first time"
Title: Re: The Distributed Arctic Sea Ice Model
Post by: NeilT on March 27, 2013, 05:23:56 PM
I have some experience playing with Linux password hash crackers using GPU.  Sadly no experience in coding them as I've pretty much given up coding.

The interesting point is that AMD grapics cards are roughly 1.5 - 2 x faster than Nvidia for these kind of operations and also that the latest quad AMD grpahics gpu crackes are  hitting more than 9 BILLION hash checks per second.

folding@home uses gpu for this too.

Whilst Grid/CPU is a good solution for some things, smaller clusters of GPU machines could be much more viable for this kind of project.

Just a thought.

Whilst I was looking around

Whilst looking around I came across this  (https://devtalk.nvidia.com/default/topic/370808/gpgpu-vs-grid-computing-with-cpus-what-advantages-does-gpgpu-have-/)

Quote
I noticed a Performance increase of about 1000%

 using a GPU even for common problems like searching
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 27, 2013, 05:29:31 PM
Hi Robert,

This project is just begging to be crowd sourced.

Perhaps at this juncture I might refer you back to the genesis of DASIM on another thread/venue:

https://forum.arctic-sea-ice.net/index.php/topic,51.msg462.html#msg462 (https://forum.arctic-sea-ice.net/index.php/topic,51.msg462.html#msg462)

and before that on the ASI blog. (http://neven1.typepad.com/blog/2013/01/piomas-january-2013.html?cid=6a0133f03a1e37970b017ee7c57fd0970d#comment-6a0133f03a1e37970b017ee7c57fd0970d)

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 27, 2013, 05:45:38 PM
Hi Arctic.io,

As luck would have it CICE does support MPI (http://www.mcs.anl.gov/research/projects/mpi/), but maybe that's not the sort of "parallel execution" you had in mind?

Thanks also for your support for the concept. Moral is great. Physical is even better!
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 27, 2013, 05:48:45 PM
Hi Neil,

Now all we need is to find a large pile of GPUs sitting around doing nothing!

Oh, and a climate modelling guru or two too.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 27, 2013, 06:03:46 PM
Quote
Now all we need is to find a large pile of GPUs sitting around doing nothing!

A large proportion of the GPU's on the planet are doing sod all. ;)

What's yours doing right now? Not much I would guess.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Robert Marston on March 27, 2013, 07:02:58 PM
The reason I mentioned the old SETI project on the other thread is it linked computers to run analysis during down time. You go to sleep, it cracked away running an analysis program. Perhaps something similar with a crowd sourced climate model? A program you could download in order to donate your computer's downtime.

I see the links. Will go and look at those threads now.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on March 27, 2013, 08:19:09 PM
As luck would have it CICE does support MPI (http://www.mcs.anl.gov/research/projects/mpi/), but maybe that's not the sort of "parallel execution" you had in mind?
MPI is same machine multiple threads. The controller can expect to get results in time. With a distributed model, you have no control when results come back, might be minutes, might be months, might be never. The challenge is to split the problem into _completely_ independent tasks. With proteins you split on proteins, with aliens you split on planets. With sea ice, umh, may be different parameters, so each client number crunches his own ice pack, essentially a different planet too. That would give you members to build an ensemble and get an average. So clients may use MPI locally, a distributed model can't.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 27, 2013, 09:54:58 PM
Quote
MPI was designed for high performance on both massively parallel machines and on workstation clusters.

The Southampton Uni R-pi cluster was also separate machines with single cores.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on March 28, 2013, 09:07:15 AM
OK, MPI moved on since last time I checked. However, from what I've read yesterday most applications rely on a constant number of processes. So may be a definition of what 'distributed' in this context means might help to sort out issues. Am I right by assuming even clients running only during the night on an unstable dial-up connection from Greenland can participate?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on March 28, 2013, 06:02:23 PM
http://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0CHMQFjAJ&url=http%3A%2F%2Fwww.nceo.ac.uk%2Fdocuments%2FNCEO2011_Flocco_Schroeder_Feltham.pdf&ei=-WlUUdLOMsOYO6CwgeAG&usg=AFQjCNF3RGQ6NDMz8Emn1hQ5NKqf17Bi5w&bvm=bv.44342787,d.ZWU (http://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0CHMQFjAJ&url=http%3A%2F%2Fwww.nceo.ac.uk%2Fdocuments%2FNCEO2011_Flocco_Schroeder_Feltham.pdf&ei=-WlUUdLOMsOYO6CwgeAG&usg=AFQjCNF3RGQ6NDMz8Emn1hQ5NKqf17Bi5w&bvm=bv.44342787,d.ZWU)

Just found this, Flocco paper explaining CICE melt pond addition .
esp. see fig 7

CICE does not produce the major drop from 1990's to 2007 at all :( 
Shorter variation not bad at all. All that seems to be achieved by the melt pond saga is to drop the overall levels so that  the model matches better towards the end and less well at the beginning.

Annual variation was not enough without ponds but it too much with ponds.
Of the bunch, the Flocco model seems better than its predecessors though.

This suggests to me that there is a major external influence causing the post 1990 decline that is not in the model.

I'm also suspicious of why for a 2010 paper they chose to stop comparisons in 2007. My guess is that it fairs very poorly with the more recent annual swings.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 03, 2013, 03:14:52 PM
Do you suppose there's any chance we could persuade Los Alamos to lend us Roadrunner for a while?

http://www.bbc.co.uk/news/technology-21993132 (http://www.bbc.co.uk/news/technology-21993132)

Quote
A US supercomputer called Roadrunner has been switched off by the Los Alamos National Laboratory in New Mexico.

The machine was the first to operate at "petaflop pace" - the equivalent of 1,000 trillion calculations per second - when it launched in 2008.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 03, 2013, 03:29:12 PM
just one of those cabinets would do the job. Since they're breaking it , may be make an offer. What's per ton scrap value? Probably affordable  :)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 03, 2013, 03:31:31 PM
Jim , have you asked for access to the recent version of CICE code repository? I have not even had the pleasure of a refusal.

v4.1 is OK for seeing whether you can run it but it's way out of date in terms of the model.

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 03, 2013, 06:08:00 PM
Hi Kim,

I have the CESM source code also, which includes CICE amongst a host of other things. The source for that version does look rather different to the original Los Alamos version.

However I've also spoken to a couple of people who should know what they're talking about, and they assure me 4.1 is the latest "stable" release. In "a coordinated international effort (http://oceans11.lanl.gov/trac/CICE/wiki/CiceDev)" CESM take it and modify it in order to couple it to their GCM. The Hadley Centre take it and experiment with modifications to the thermodynamics. The US Navy take it and modify other portions of it, etc. etc.

Re Roadrunner, I've no idea what the scrap value of each cabinet might be. However I suspect that the cost of the electricity needed to run all those GPUs and the associated air conditioning units for a significant length of time would be significantly greater than zero!
 
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 04, 2013, 03:47:27 PM
Re your Flocco/CICE melt pond query Kim, I am informed that:

"[They chose to stop comparisons in 2007] because some forcing data was only available through 2007 at the time [they] did the runs. Then it takes some time to get a paper through the review process and into print."

Given the current empirical data hot off the presses from the real world, perhaps it wouldn't come as too much of a shock should one discover that the CICE model is much more sensitive to forcing data than to internal model parameters. By way of example see this 2011 "poster" from Los Alamos (http://permalink.lanl.gov/object/tr?what=info:lanl-repo/lareport/LA-UR-11-11313). Unfortunately the learned papers referenced seem to be paywalled.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 07, 2013, 02:07:58 PM
An additional contribution to the debate from A-Team over in the PIOMAS April 2013 thread (http://neven1.typepad.com/blog/2013/04/piomas-april-2013.html?cid=6a0133f03a1e37970b017eea0d4ed4970d#comment-6a0133f03a1e37970b017eea0d4ed4970d) on the ASI blog:

Piomass solves the 'ice momentum equation governed by a viscous–plastic rheology with an elliptical plastic yield curve" as described in Hibler 1979, which in turn is based on the AIDJEX model of Coon 1974. The Los Alamos CICE sea ice model Hunke and Lipscomb 2008 also uses a very similar isotropic elastic-visco-plastic rheology.

At the time, these improved on primitive rheologies assuming a freely drifting, compressible viscous Newtonian fluid with zero shear strength ice pack However VP isotropic rheology cannot and does not capture observed shear, vorticity, divergence, thickness distributions, trends in velocity and export, or deformation-driven ice production.

Looking through the rear view mirror for 'Inside Baseball' statistics will not get at the ice end game at all. This is just 'negotiating' in Kübler-Ross terms -- denial, anger, negotiating etc have no effect on actual outcome.

Jerome Weiss. Drift, Deformation and Fracture of Sea Ice SpringerBriefs in Earth Sciences DOI: 10.1007/978-94-0007-6202-2.5 (http://link.springer.com/book/10.1007/978-94-007-6202-2/page/1)

http://192.95.52.196/wordpress/wp-content/uploads/2013/02/Paper5EarlyView.pdf (http://192.95.52.196/wordpress/wp-content/uploads/2013/02/Paper5EarlyView.pdf)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on April 10, 2013, 02:15:23 AM
Here is Martin O'Leary's introduction of his Javascript Ice Sheet Model. I know, it is not about sea ice, on the other hand he introduces a possible technology actually needed to really allow distributed computing. There are apprx. a billion machines on this planet capable of running Javascript.

http://lists.cryolist.org/pipermail/cryolist-cryolist.org/2013-February/001969.html (http://lists.cryolist.org/pipermail/cryolist-cryolist.org/2013-February/001969.html)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: ccgwebmaster on April 12, 2013, 10:04:33 PM
Here is Martin O'Leary's introduction of his Javascript Ice Sheet Model. I know, it is not about sea ice, on the other hand he introduces a possible technology actually needed to really allow distributed computing. There are apprx. a billion machines on this planet capable of running Javascript.

http://lists.cryolist.org/pipermail/cryolist-cryolist.org/2013-February/001969.html (http://lists.cryolist.org/pipermail/cryolist-cryolist.org/2013-February/001969.html)
I'm curious how you'd persuade people to keep their browser windows open while it runs though (or to even open them in the first place)? Javascript is also subject to rather tight security constraints - though if you only need to communicate back to the server that shouldn't be problematic in itself. It's not what I'd call a high performance language... and implementations vary.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on April 12, 2013, 11:09:40 PM
ccgwebmaster, don't understand first point, if you want to run a program, you'll keep the window open, otherwise you'll close it.

I see the security constraints as an advantage, users can be sure the program doesn't go wild, because it runs in a sandbox.

WebRTC is a recent web standard and allows communication directly between (different) browsers, basically you can use it to program your own Skype version or exchange any kind of data.

And performance is getting better, since running a model is just number crunching you can assume 50% native speed, which means you only need to double the number of nodes to achieve C or Fortran like performance. Given the amazing number of possible clients that's my last concern.

Here is a simple implementation of the Navier Stokes equations, try for yourself : http://nerget.com/fluidSim/ (http://nerget.com/fluidSim/)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: ccgwebmaster on April 12, 2013, 11:33:24 PM
ccgwebmaster, don't understand first point, if you want to run a program, you'll keep the window open, otherwise you'll close it.
If you want to use distributed computing resources, I'd argue you don't want that model (which I grant is how most people see running programs). You'd do better with something that can run around the clock in the background, potentially even just using idle CPU resource when the machine isn't doing a lot else. The person running the program need never be aware it exists and never usually see any "window" at all. That would arguably be more likely to give access to a much larger resource.

Just strikes me there's a world of difference between however many people remembering to open a browser window to run some javascript for as long as they feel like vs something that is always running without any thought of effort on their behalf - and most likely using a much more robust and high performance platform than javascript.

The fine art of optimisation is something that really gets lost these days - as there is so much processing capacity available on the typical machine that nobody really considers it a problem to be very wasteful of it. In some situations truly dramatic optimisations can be obtained by just improving a piece of code. If one can optimise something by, say, 100x by improving the code (or platform) - you need to recruit an awful lot more people to balance that! (and I have in the past achieved optimisations of that magnitude or greater - though not necessarily in raw computation scenarios of the type being mentioned here)

Do you have any reference that doubling the nodes is enough to get C/Fortran like performance? (I'd have expected Javascript to be significantly worse than that)

The example you provide is interesting (setting aside the efficiency issue with the CPU resource), as is WebRTC. I view Javascript as a lightweight (frequently unreliable) addition for web development whereby you can move some processing client side to save a server round trip and provide a faster response, typically with UI elements. For anything more than the most superficial functionality I'd go straight to C# or T-SQL (and in the past Delphi or VB), while noting none of them is necessarily ideal for heavy computational processing either.

If you could farm out the computation tasks appropriately, I suppose there's an argument for being able to provide both approaches - javascript for people casually dipping into it, and encouraging them to install a proper platform via that route?

I do applications and databases, I don't know a lot about the sorts of calculations that would be involved in modelling - never had the need/opportunity to date to get into that sort of thing. I assume they lend themselves very well to parallelism?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: ccgwebmaster on April 12, 2013, 11:48:39 PM
And performance is getting better, since running a model is just number crunching you can assume 50% native speed, which means you only need to double the number of nodes to achieve C or Fortran like performance. Given the amazing number of possible clients that's my last concern.
Incidentally performance wise, I'd tip the comments earlier in the threat mentioning the use of idle graphics cards. I believe that's what (at least until very recently) bitcoin mining rigs (where rate of calculations is critically important) were using. You won't tap into that using javascript to my knowledge - it's native hardware stuff - you need the proper access to the hardware which the javascript sandbox won't let you anywhere near.

Performance probably an order of magnitude or two better, I suspect (one should consider just how many layers of abstraction javascript is adding onto the hardware before it executes a single line of code). Javascript isn't even strongly typed! (OK, I'm biased - I regard javascript as little better than a toy language - but I have some good reasons not to care much for it)

No reason I can see one can't do distributed computing of this sort in theory - already been done:
http://setiathome.berkeley.edu/ (http://setiathome.berkeley.edu/)
http://www.bbc.co.uk/sn/hottopics/climatechange/moreaboutexperiment.shtml (http://www.bbc.co.uk/sn/hottopics/climatechange/moreaboutexperiment.shtml)

You just need the platform - and the program.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: crandles on April 13, 2013, 12:15:39 AM
I do applications and databases, I don't know a lot about the sorts of calculations that would be involved in modelling - never had the need/opportunity to date to get into that sort of thing. I assume they lend themselves very well to parallelism?

Not sure about ice models. For weather/climate, while the same calculations are performed for all cells including adjacent ones, the problem is access to information from adjacent cells. A large cache helps. While GPU can do lots of calcs in parallel, can you get the information there in a timely fashion?


Quote
You just need the platform - and the program.

BOINC is a open source platform used by many distributed computing projects including Seti, CPDN and many more. I think it takes quite a bit of getting to grips withs.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: ccgwebmaster on April 13, 2013, 12:49:30 AM
I do applications and databases, I don't know a lot about the sorts of calculations that would be involved in modelling - never had the need/opportunity to date to get into that sort of thing. I assume they lend themselves very well to parallelism?

Not sure about ice models. For weather/climate, while the same calculations are performed for all cells including adjacent ones, the problem is access to information from adjacent cells. A large cache helps. While GPU can do lots of calcs in parallel, can you get the information there in a timely fashion?


Quote
You just need the platform - and the program.

BOINC is a open source platform used by many distributed computing projects including Seti, CPDN and many more. I think it takes quite a bit of getting to grips withs.
Within the local computing environment I would be very surprised if getting data in or out of the GPU was a bottleneck for the sort of distributed computing we're talking about (data has to move fast to support the graphical requirements of recent generation games - which indeed is why the GPU is quite so chunky in the first place).

Communication between peers over the internet (via TCP-IP, one presumes) would be a much larger issue though (or even over a LAN). Bandwidth constraints and communications latency/reliability orders of magnitude worse than within the local computing environment.

If I got the gist of the BBC project correctly, each distributed platform ran it's own model to completion and the results were aggregated after the fact (SETI has no requirement for communication between peers at all - the ideal parallel processing situation). The only ways I can see to get timely access to information from local cells is if either of the following apply:

Perhaps one could overlap larger blocks of cells between machines, on the assumption that as distance from a neighbour increases the effect diminishes. You'd need to then have some process to reconcile the rapidly increasing differences in the bigger picture though (because a small effect is not no effect - butterfly and wings and all). I think really it would depend upon the model and how it was constructed.

I imagine any proper platform for doing this sort of thing would take some getting to grips with - but arguably at lower cost and barrier to entry than having ones own supercomputer (or maybe even building your own out of a local network - though that might be within the grasp of many larger academic institutions with thousands of machines sitting around anyway). That's before you consider parallel processing (especially of interdependent processes as being discussed here) comes with it's own special set of decidedly non trivial headaches - even in smaller applications.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on April 13, 2013, 01:19:37 AM
ccgwebmaster, I think, I'm approaching the problem from a different angle. The resource which is available at no cost and en mass are machines. What we don't have are developers. So, I simply look which language do most devs speak. The probability to get some one with JS skills involved is a hell of lot higher than someone who can code shaders on a GPU. And it is much easier to make a running program fast than a fast one running.

Mozilla launched asm.js, google that. They use a special semantic to tell the compiler about types and achieve already 50% with the first implementation, but as said, I wouldn't care about speed now.

Obviously the needed resources are not available here in this forum. Who might be addressed as sponsor? Google Summer of Code comes to my mind. Might be enough to get a very little pilot, let's say version 0.00001 where others can connect later.

Btw. the Navier Stokes code I've linked is part of Google Chrome's test suite. There might be already some one working on a similar project.

Yes, the BBC projects introduces ensembles, that's why each client runs his own (really) simple model. Don't think this approach allows to include ice sheet models or runs on smart phones.

May be you have heard of Internet Census 2012: http://internetcensus2012.bitbucket.org/paper.html (http://internetcensus2012.bitbucket.org/paper.html) One Person did the whole thing, build a plattform, the database and the clients. He scanned the complete Internet, every single IP address, multiple times, by using an interesting distributed approach. Basically he hijacked hundreds of thousands routers and other devices, uploaded silently his own code and let them scan a subnet and report the results.

The project was completely illegal, but he has programmed kind of agents, clever enough to adapt to the machine they run on and to copy itself to other clients - if available - with a subtask to fulfill and to report up stream. Essentially a self replicating avalanche. Very smart.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: ccgwebmaster on April 13, 2013, 08:01:16 AM
ccgwebmaster, I think, I'm approaching the problem from a different angle. The resource which is available at no cost and en mass are machines. What we don't have are developers. So, I simply look which language do most devs speak. The probability to get some one with JS skills involved is a hell of lot higher than someone who can code shaders on a GPU. And it is much easier to make a running program fast than a fast one running.
If you want proper developers - I question javascript is the place to look! (notwithstanding that some people do some pretty impressive things with it). In my experience most people I've known who use it do exactly what I do with it - use it for it's little niche (client side execution on web pages) and that's about it.

Not all developers are equal - just because someone can string a little code together in javascript certainly doesn't guarantee they have the same abilities as someone who can use much richer and more powerful platforms. I grant that there may not be so many people who can comfortably work with GPUs and design and implement complex (especially involving parallel processing) solutions - but unless I'm mistaken you'd need a little more development experience than a little javascript to tackle meaningful modelling? Any developer capable of doing it with javascript will also be capable of doing it using a whole range of other platforms - because a skilled developer is not typically tied to a particular language or technology (and since javascript is a client side technology you'd still need something else at the server).

If all you can get is someone who can string javascript together, I suspect you're going to be seriously limiting the solutions that can be constructed.
Quote
Mozilla launched asm.js, google that. They use a special semantic to tell the compiler about types and achieve already 50% with the first implementation, but as said, I wouldn't care about speed now.

Obviously the needed resources are not available here in this forum. Who might be addressed as sponsor? Google Summer of Code comes to my mind. Might be enough to get a very little pilot, let's say version 0.00001 where others can connect later.
One could try an open source approach with enthusiasts who enjoy development and who aren't time saturated on other things? No ideas otherwise.

Quote
The project was completely illegal, but he has programmed kind of agents, clever enough to adapt to the machine they run on and to copy itself to other clients - if available - with a subtask to fulfill and to report up stream. Essentially a self replicating avalanche. Very smart.
Otherwise called a worm? A botnet builders ideal? Not so smart when they run out of control and cripple networks.

A little out of my area, but reminds me a bit of metasploit if you configured it to scan a range - and automatically exploit anything it found? If you then automatically installed something to keep propagating the effect?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on April 13, 2013, 11:18:48 AM
If all you can get is someone who can string javascript together, I suspect you're going to be seriously limiting the solutions that can be constructed.
Things have changed in the last 10 years, you might want to update yourself. This is a good starting point: https://github.com/kripken/emscripten/wiki
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 13, 2013, 10:19:16 PM
Apologies for my recent absence from the discussion, which I see has been proceeding apace of late. I've been AWOL endeavouring to "make connections" of a different kind.

(https://forum.arctic-sea-ice.net/proxy.php?request=http%3A%2F%2Fsphotos-f.ak.fbcdn.net%2Fhphotos-ak-ash3%2F644629_10151582603849976_874391875_n.jpg&hash=02d250fa2d1eff2decff3b9c23b006e1)

I would (modestly!) go so far as to describe myself as a "real developer", having been developing software for over 40 years, with the last 30 or so of those concentrating mostly on the "embedded" variety.

My instincts might be a bit old fashioned, but they still tell me that "scripting" languages of whatever flavour won't be up to this sort of job. Java maybe, but not Javascript. I'd be delighted to be proved wrong however!

Using otherwise idle GPU cycles running something in the background more finely divided than BOINC, (and voluntarily donated!) was my original thought. Power consumption would likely skyrocket though, if the concept could be made to work.

Regarding any potential open source project, don't forget about the Google Code placeholder (https://code.google.com/p/dasim/).

Regarding potential sponsors I've previously mentioned the likes of Google, Microsoft, Amazon and Lego. However I've neglected to mention possibly the most obvious. Who is it that keeps going on about a "Smarter Planet"? Who owns Java these days for that matter?

Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on April 16, 2013, 01:16:51 AM
Here is a relevant NASA information pool: https://modelingguru.nasa.gov/
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 17, 2013, 03:38:14 PM
An alternative take on potential hardware platforms:

http://goparallel.sourceforge.net/vendors-accelerating-hpc-cores-per-buck/ (http://goparallel.sourceforge.net/vendors-accelerating-hpc-cores-per-buck/)

Quote
All the tier-one server vendors–from IBM to HP to Silicon Graphics (SGI)–are offering Xeon Phi powered models, but Super Micro Computer, Inc. (San Jose, Calif.) has perhaps the widest range of options in its line up.

Super Micro offers single-, double-, triple- and quad-height (1U, 2U, 3U and 4U, respectively) rack mountable models, as well as a tower for supercomputer-caliber workstations.

Four different single-height models support the installation of one-, two- or three-coprocessor cards for 60, 120 or 180 Xeon Phi cores per unit, in addition to either single- or dual-sockets for its Xeon E5 main processor(s).
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Artful Dodger on April 17, 2013, 09:39:20 PM
An alternative take on potential hardware platforms:
Hi Jim,

Have you considered a PS2 or PlayStation 3 cluster (http://en.wikipedia.org/wiki/PlayStation_3_cluster)? You'll never bet the MIPS/$ rating, and you can start building the cluster with donated 5+ year old hardware.  8)

(https://forum.arctic-sea-ice.net/proxy.php?request=http%3A%2F%2Fstatic.flickr.com%2F4%2F5037399_46ca6d2a1b.jpg&hash=8bba275d43e324e66bdeec0685f0f5ef)

In fact, there might be some hobbyists/amateurs out there already with a PS2/3 Cluster just looking for a good science problem to chew...  ;D
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 19, 2013, 11:09:56 AM
Hi Lodger,

Yes indeed, since a PS3 cluster is already on the "hardware shopping list". Roadrunner:

Quote
Includes 12,000 modified versions of the processor originally designed for the Sony Playstation 3, and 92km (57 miles) of fibre optic cable, housed in 288 refrigerator-sized cases.

I guess we should add both Intel and Sony to the "sponsor shopping list"?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Artful Dodger on April 20, 2013, 12:31:26 AM
I guess we should add both Intel and Sony to the "sponsor shopping list"?
Thanks, Jim (esp. for the quote, the SMF search tool is weak :) )

I haven't built a mini-cluster in a while, but at that time the PS3 was being 'bricked' by Sony, and certain ATI graphic cards were becoming even more competitive in MIPS/$ from a GPU Cluster (http://en.wikipedia.org/wiki/GPU_cluster).  8)

Still, unless you see an ongoing need for CPU time, finding free MIPS on existing community clusters may be the best way to go.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 21, 2013, 11:38:56 AM
Kim has stated elsewhere (http://forum.arctic-sea-ice.net/index.php/topic,236.msg4295.html#msg4295) that he has been "involved in collaborative open source software development projects many times".

For Kim and anyone else with similar experience - Would you be happy using the Google Code feature request / bug tracking system?

https://code.google.com/p/dasim/issues/list (https://code.google.com/p/dasim/issues/list)

If not perhaps you can suggest a more comprehensive alternative instead? By way of example, the Los Alamos CICE team use Trac (http://trac.edgewall.org/).

P.S. Amended following Kim's subsequent comments!
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 21, 2013, 12:33:48 PM
Kim is Mr ;)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Artful Dodger on April 21, 2013, 08:54:35 PM
Hi Jim,

Friend of the ASI Blog 'Seke Rob' has not registered yet here at the 'Forum, but he is involved with several large distributed computing projects.

I've sent him a PM inviting him to visit this thread, and to contribute his thoughts.

Cheers,
Lodger
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 21, 2013, 10:14:08 PM
Hadley Centre Technical Note 91

Quote
Arctic sea ice extent has declined at an annual rate of over 4% per decade since
satellite records began in 1979. This rate is faster in the summer season and
there is evidence that the rate of loss has increased over the latter half of the
satellite period. There is also evidence that the ice has thinned at a rate of
approximately 60cm per decade. However, the heating required to melt the ice at
this rate is very small - just 1 W/m2 representing only 2% of the magnitude of the
seasonal cycle, implying that observing and modelling the mechanisms
underlying these changes will be challenging.

That means that a model which is able to model the true radiative processes with an uncertainty of +/- 2% would produce somewhere between twice the actual decadal melting variation and nothing at all.

ie an uncertainty of 100% in the result. Clearly such a level of uncertainty would not be much use. Even to be roughly informative it would need to be about an order of magnitude more accurate than that, ie +/- 0.2 % .

How realistically do you expect to be able to achieve that level in a model? What do you imagine the uncertainty of current models to be in completely and accurately modelling the entire earth's climate?

In view of  those figures from the Met Office modelling group, perhaps we can now better understand the relevance of the comment I made in the other thread:
Quote
I actually think trying to model the Earth from first principals is a bit , shall we say, ambitious.

Thinking that current GCMs are capable of prediction, is foolishness.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 21, 2013, 10:37:12 PM
Quote
Kim has suggested elsewhere that he has been "involved in collaborative open source software development projects many times".

I did not "suggest" I stated clearly that I had. The innuendo is unwarranted.

re the uncertainty problem:

Years ago I worked on a model to estimate the cross-channel interference between two microwave communications beams between ground stations and satellites when there was precipitation in the common volume of the two beams.

Done on a limited scale, this is very similar to what is involved in climate modelling.


When we did a check against real data I was amazed to find that we were within 10%. I'd estimated that the uncertainty in the end result would be about +/-100%.

That does not mean that I was wrong. That was the uncertainty.

The fact that the result was much closer than that is not contradictory. There could have been two or more inaccuracies that fortuitously cancelled. That one test does not mean the model was accurate to within 10%.

This is the point I also made about GCM estimates of global temps.

Two parameters that are given values that are too strong, but act in opposing directions, can produce hind-casts that are reasonably close over the calibration period without that making the model correct.

Giving too much weight to both CO2 and volcanoes works for periods where there is mix of both.

It fails when there is a period without one or other forcing, as is now becoming apparent in the post Pinatubo period.


Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 22, 2013, 09:28:09 AM
Lodger - OK - Thanks very much.

Kim - The "innuendo" as you call it was unintentional. I was merely trying to provide some context for a question that "appeared out of nowhere" on this thread.

Given that you have been involved in such projects many times, do you have any strong views and/or firm favourites when it comes to bug squishing procedures?

Decades ago I worked on a model for simulating physical processes on the "supercomputers" of the day, which "is very similar to what is involved in climate modelling." These days, however,  I refer to myself as "an engineer" rather than "a scientist".  If "a model" is useful in the real world I'm content with that.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 22, 2013, 11:24:26 AM
" on the supercomputers of the day... " ,  about the equivalent of your Rasp Pi today then ;)

Quote
If "a model" is useful in the real world I'm content with that.

The corollary being you have to prove it is "useful" before you can say it is useful and be content to use it.

That stage seems to have been skipped in climate policy. The current process seems to be to use the models to redesign global policy ... until they are proved wrong.
Title: Planet Simulator
Post by: anonymous on April 22, 2013, 11:53:05 AM
Here a link (http://www.mi.uni-hamburg.de/Planet-Simul.216.0.html?&L=3) to a model with a medium complexity and resolution. It's pleasing because installation takes less than 5 minutes (linux/mac) and simple simulations run really fast. Also it is easy to design experiments, no sea ice, no Himalaya, bigger earth, other orbit, etc. It helped me a lot to understand the fundamental concepts. The sea ice modul is nicely structured and even non Fortran experts should get a clue. MPI is supported. See below screenshots of configuration and dash before start. Forum (http://www.mi.uni-hamburg.de/Forum.5807.0.html), Docu (http://dl.dropbox.com/u/354885/Arctic/Plasim/PS_ReferenceManual.pdf), Papers (http://www.mi.uni-hamburg.de/Downloads-an.245.0.html?&L=3#c4653).

(https://dl.dropbox.com/u/354885/Arctic/Screenshot%20at%202012-08-15%2021%3A45%3A36.png)

(https://dl.dropbox.com/u/354885/Arctic/Screenshot%20at%202012-08-15%2021%3A47%3A25.png)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Ice Cool Kim on April 22, 2013, 12:26:38 PM
That's interesting. I may test it when I have a bit of free time.
Title: Re: Planet Simulator
Post by: Jim Hunt on April 22, 2013, 02:16:53 PM
Hi Arctic.io,

Here a link (http://www.mi.uni-hamburg.de/Planet-Simul.216.0.html?&L=3) to a model with a medium complexity and resolution.

Thanks very much for that, and it is indeed most interesting. Having had a spare moment I can confirm that the "Planet Simulator" builds and runs very easily on a Raspbian equipped Raspberry Pi, although the process does take somewhat longer than five minutes.  It seems to rebuild most of itself each time you run it though?

More from me when I've found another spare moment to read the manual and/or the forum!
Title: Re: Planet Simulator
Post by: anonymous on April 22, 2013, 04:45:50 PM
... on a Raspbian equipped Raspberry Pi, although the process does take somewhat longer than five minutes.  It seems to rebuild most of itself each time you run it though?
Here is a guy running Linux on a 8bit microcontroller (http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linux%20on%208bit), I think it'll take weeks to install Planet Simulator.  ;D

And yes, for every run the model compiles and let's say creates a new program with all variables hard coded. But this is usual optimization. It even creates a new folder for that, so you can have a bunch of experiments and pause and run them as (and where) you like.

Have you found the 'touch Expert' trick? In case filenames haven't changed this table helps to map them onto surface parameters.

Code: [Select]
file name abbr. unit variable name
N032.surf.0129.sra sg m²/s² surface geopotential orography
N032.surf.0169.sra tsa K mm surface temperature accumulated
N032.surf.0172.sra lsm fract. land sea mask
N032.surf.0173.sra z0 m roughness length
N032.surf.0174.sra alb fract. mm albedo (surface background albedo)
N032.surf.0199.sra vegc fract. mm fractional vegetation
N032.surf.0200.sra lai mm leaf area index
N032.surf.0210.sra sic % mm sea ice cover
N032.surf.0212.sra vegf fract. forest ratio
N032.surf.0229.sra mrfc m maximum soil water holding (field) capacity
N032.surf.0232.sra glac fract. glacier fraction
N032.surf.1730.sra z0t m roughness length due to topography
N032.surf.1731.sra z0v m roughness length due to vegetation and land use
N032.surf.1740.sra albs fract. bare soil albedo
N032.surf.1741.sra albv fract. albedo due to vegetation
Title: Re: Planet Simulator
Post by: Jim Hunt on April 25, 2013, 03:12:06 PM
Have you found the 'touch Expert' trick?

I have now. I wondered what you meant at first, but then I discovered that I needed to edit a bit of source code to persuade the Planet Simulator to run on a small cluster of Raspberry Pis. The whole process is documented here:

http://econnexus.org/plasim (http://econnexus.org/plasim)

Amongst other things I was wondering why the "Sea Ice" box was greyed out, and perusing most.c made the answer abundantly clear! Sadly it seems even with the box ticked no visualisation of sea ice is available.  :(

I'd be most grateful to hear any further thoughts you may have on this little experiment.
Title: Re: Planet Simulator
Post by: anonymous on April 25, 2013, 05:28:52 PM
... to persuade the Planet Simulator to run on a small cluster of Raspberry Pis. The whole process is documented here:

http://econnexus.org/plasim (http://econnexus.org/plasim)
Wow, that's an impressive step forward within a small time frame! I'm not sure I can be of any further help, I have only vague memories of the week I spent with plasim. I'm sure you have found the user and the reference manual. Two links from my bookmarks: http://www.bgc-jena.mpg.de/bgc-theory/index.php/Support/PlaSim (http://www.bgc-jena.mpg.de/bgc-theory/index.php/Support/PlaSim) and http://www.dgf.uchile.cl/rene/PLASIM/ (http://www.dgf.uchile.cl/rene/PLASIM/) google translation works good on the latter. You might get live sea ice visualization via gui.cfg, in any case via postprocessor and netcdf files. Panoply has a good GUI and can transform netcdf into many other formats including video files(avi).

The thing is, once you got Planet Simulator running, you'll discover literally a planet full of possibilities. From that point, everybody chooses his unique path and makes different experiences. I think, that's why googling this subject is only of little help. But contact Edilbert at the forum: http://www.mi.uni-hamburg.de/Planet-Simul.5892.0.html?&L=3%27%22 (http://www.mi.uni-hamburg.de/Planet-Simul.5892.0.html?&L=3%27%22) If you can raise his attention, you'll get the best support achievable.

Title: Re: The Distributed Arctic Sea Ice Model
Post by: Artful Dodger on April 26, 2013, 03:05:50 AM
Hi fellows,

I think 'Planet Simulator' deserves its own thread, so it's not buried here among the main topic.

Who would like to start this new thread? Jim, or Arcticio?

Thanks!  8)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 26, 2013, 01:12:14 PM
Hi Lodger,

I think 'Planet Simulator' deserves its own thread, so it's not buried here among the main topic.

No sooner said than done!

The University of Hamburg's "Planet Simulator (http://forum.arctic-sea-ice.net/index.php/topic,262)"
Title: Re: The Distributed Arctic Sea Ice Model
Post by: anonymous on May 10, 2013, 06:45:50 AM
Found a great essay about the history of climate models. It starts with the time 'computers' were merely build by scientists using vast amount of papers and pencils, moves on describing the era they consisted of glowing tubes and nicely ends earlier this year. The author explains very well, how one layer of complexity was build on the next one and which critics emerged from the imperfections.

General Circulation Models of Climate (http://www.aip.org/history/climate/GCM.htm)

The website and the essay is based on the book written by Spencer Weart: The Discovery of Global Warming (http://www.aip.org/history/climate/index.htm)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on May 19, 2013, 05:55:25 PM
Hi arcticio,

Found a great essay about the history of climate models

Thanks for those most interesting links.

Some more links to potentially relevant threads here on the ASIF itself:

What do the GCM models get wrong about sea ice (http://forum.arctic-sea-ice.net/index.php/topic,236.0.html)?

and

On the importance of conserving mass in sea ice models (http://forum.arctic-sea-ice.net/index.php/topic,300.0.html)

In the latter Messrs Moon and Wettlaufer state that:

Quote
We describe how a long standing approach used in the thermodynamic modeling of sea ice fails to conserve mass
.

Sounds like a fairly fundamental problem?
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on September 06, 2013, 01:39:52 PM
Why trust climate models? According to Ars Technica "It's a matter of Simple Science (http://arstechnica.com/science/2013/09/why-trust-climate-models-its-a-matter-of-simple-science/)"!

Quote
It's possible that shrinking sea ice in the Arctic could increase snowfall over Siberia, pushing the jet stream southward, creating summer high pressures in Europe that allow India’s monsoon rains to linger, and on it goes… It's hard to examine those connections in the real world, but it's much easier to see how things play out in a climate model.

The article explains the inner workings of climate models, with the emphasis on the Community Earth System Model (http://www2.cesm.ucar.edu/). Here's one of the graphics:

(https://forum.arctic-sea-ice.net/proxy.php?request=http%3A%2F%2Fcdn.arstechnica.net%2Fwp-content%2Fuploads%2F2013%2F08%2Fcesm_architecture_diagram.png&hash=b7d375ac910e54f71547354a12b0bca2)

Courtesy of Kate Alexander (http://climatesight.org/2011/12/14/the-software-architecture-of-global-climate-models/) and Steve Easterbrook (http://www.easterbrook.ca/steve/2013/01/simple-climate-models-to-play-with-in-the-classroom/)

Those links are well worth exploring too. By way of conclusion, another quote from the article:

Quote
What is so remarkable about these climate models is that it really shows how much we know about the physics and chemistry of the atmosphere, because they’re ultimately driven by one thing—that is, the Sun. So you start with these equations, and you start these equations with a world that has no moisture in the atmosphere that just has seeds on land but has no trees anywhere, that has an ocean that has a constant temperature and a constant amount of salt in it, and it has no sea ice, and all you do is turn it on. [Flick on] the Sun, and you see this model predict a system that looks so much like the real world. It predicts storm tracks where they should be, it predicts ocean circulation where it should be, it grows trees where it should, it grows a carbon cycle—it really is remarkable.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on November 20, 2013, 07:19:08 PM
According to Wired (http://www.wired.com/wiredenterprise/2013/11/montblanc/):

Quote
Alex Ramirez wants to build a supercomputer that’s six times as powerful as Tianhe-2, the Chinese machine that’s ranked as the world’s most powerful. That’s an incredibly ambitious goal, but here’s the surprising part: He wants to build it using the sort of chips you typically find in mobile phones and tablets.

More at: http://montblanc-project.eu/project/introduction (http://montblanc-project.eu/project/introduction)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on May 23, 2015, 11:37:40 AM
Elizabeth Hunke's presentation to the Sea Ice Prediction Network about sea ice models in general and CICE 5 in particular:

http://youtu.be/zljsJ5lsZoM (http://youtu.be/zljsJ5lsZoM)

The slides from the webinar are available at:

http://www.arcus.org/sipn/meetings/webinars/archive (http://www.arcus.org/sipn/meetings/webinars/archive)
Title: Re: The Distributed Arctic Sea Ice Model
Post by: AndrewB on March 25, 2017, 02:12:24 PM
Jim,
I am aware I am kind of resurrecting this thread, but just wanted to note two things:

Note that some (many?) climate models are Open Source and their source code is freely available for academic purposes. But honestly, downloading this kind of source code which would take months to run on a desktop PC doesn't seem very practical to me.
So I guess we'll always have to keep counting on large, expensive supercomputer resources for running the latest, most sophisticated climate simulations, including sea ice models.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on March 31, 2017, 05:42:45 PM
I am aware I am kind of resurrecting this thread

No problem!

Quote
A crowd-funded, collaboratively developed, Open Source climate model is always a Good Idea (tm) imho.

I won't argue!

Quote
The significant caveat here, according to my limited expertise in the subject, is that parallel climate simulation algorithms require high bandwidth and low latency interconnects between computing nodes. Hence most are run in batch mode on supercomputers, and do not lend themselves to a distributed environment.

True enough. Fortran + MPI seems to be order of the day. Perhaps that needs to change?

Quote
Note that some (many?) climate models are Open Source and their source code is freely available for academic purposes. But honestly, downloading this kind of source code which would take months to run on a desktop PC doesn't seem very practical to me.

By way of experiment, a cluster of Raspberry Pi Mark 1Bs running a "medium complexity" climate model:

http://econnexus.org/projects/the-distributed-arctic-sea-ice-model/raspberry-pi-planet-simulator-cluster/ (http://econnexus.org/projects/the-distributed-arctic-sea-ice-model/raspberry-pi-planet-simulator-cluster/)

Fortran + MPI!
Title: Re: The Distributed Arctic Sea Ice Model
Post by: misfratz on April 25, 2017, 05:06:00 PM
Since it is, today, eighteen months since I left the Hadley Centre, I'm going to out myself now as a former climate modeller.

What are you interested in doing that is different to what is being done by the supercomputer-using modelling centres?

Is your initial aim just to recreate what they have done so that you can understand it better, and work from there?

Bearing in mind the fast pace of development it is possible to do a lot without a supercomputer, if you are prepared not to be operating at the latest high resolutions.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on April 29, 2017, 12:11:37 AM
I'm going to out myself now as a former climate modeller.

Intriguing! Which bits of the climate did you used to work on?

Quote
What are you interested in doing that is different to what is being done by the supercomputer-using modelling centres?

Modelling sea ice better! Going back to early 2013 it seemed that existing models didn't do terribly well in the "new Arctic". Thinner sea ice, More fragmented and more mobile than in the "old Arctic". Plus my personal hobby horse, open water in the Arctic basin allowing the generation of significant swells (http://forum.arctic-sea-ice.net/index.php/topic,1222).

Quote
Is your initial aim just to recreate what they have done so that you can understand it better, and work from there?

Perhaps the University of Hamburg's Planet Simulator (http://forum.arctic-sea-ice.net/index.php/topic,262.0.html) covers that base?

Quote
Bearing in mind the fast pace of development it is possible to do a lot without a supercomputer, if you are prepared not to be operating at the latest high resolutions.

The "distributed" bit involved conjecturing whether it would be feasible to parallelise climate models in general and sea ice models in particular such that millions of mobile phones and/or Raspberry Pis could be persuaded to act like a supercomputer. As Andrew pointed out above:

Quote
Climate simulation algorithms require high bandwidth and low latency interconnects between computing nodes.

Unless of course you know different!
Title: Re: The Distributed Arctic Sea Ice Model
Post by: misfratz on April 30, 2017, 03:15:11 PM
I used to work on the atmosphere model. In a coupled model a lot of the problems in the atmosphere model that I tried to reduce were caused by errors in the sea-surface temperature distribution, which were caused by tropical convection.

It's hard to tell whether the climate models struggle with Arctic Sea Ice because they are too conservative (because they have to have enough sea-ice in the control), or because the atmospheric forcing is wrong. If it is the atmospheric forcing then one is in the realms of trying to devise a better way to parametrise convection, which is not for the faint-hearted.

It is true that the different parts of the simulation need to communicate with each other, so you would struggle to distribute a single simulation over the internet. What you could do, if you had a compact enough model, is to run it lots of times with different settings, as done by climateprediction.net

One of the most obvious ways to cut the computational cost down is to not have an atmosphere model. This then reduces the risk that you will have to try to become an expert in tropical convection to fix your errors. Then you could probably run a sea-ice model with a reasonably good resolution.

There are a couple of things that you could think of doing with a stand-alone sea-ice model. You could try to recreate the past using atmospheric forcing from a reanalysis, and then see how changing the sea-ice model affects its accuracy. Or you could create a simple statistical "weather" model to force a sea-ice forecast with a realistic range of different weather patterns, running the forecast many times with different weather.
Title: Re: The Distributed Arctic Sea Ice Model
Post by: Jim Hunt on December 22, 2018, 07:34:01 AM
There's a shiny new Wikipedia article on the CICE sea ice model:

https://en.wikipedia.org/wiki/CICE_(sea_ice_model)