Dibase Blog

Submitted by Ralph McArdell on Sun, 20 Jul 2014 16:58:29 +0100
Updated Sun, 09 Nov 2014 10:33:13 +0000

In my previous post Parallella Problems – Initial Investigations [1] I detailed the problems I was having with the 4 Parallella boards [2] in my mini-cluster and what I had done to investigate them.  Since then I have been continuing my investigations and it looks like I might have found a reason and solution to the more serious problem suffered by the board that suffers complete system lock ups when running Epiphany chip [3] tests and examples.

Submitted by Ralph McArdell on Mon, 14 Jul 2014 11:03:54 +0100
Updated Thu, 30 Oct 2014 10:15:48 +0000

In my last two posts Building a Parallella Mini-Cluster [1] and Bringing Up a Parallella Mini-Cluster – Trials and Tribulations [2] I described constructing a small cluster of 4 Parallella boards [3] into a case with power and cooling and initial steps at getting the cluster up and running. I finished at the point where I knew of the following problems:

Submitted by Ralph McArdell on Sat, 12 Jul 2014 16:35:50 +0100
Updated Tue, 04 Nov 2014 08:44:18 +0000

My previous post Building a Parallella Mini-Cluster [1] dealt with physically building the cluster and ended at the point it could be switched on and off. The next stage is bringing the cluster up to a stable and usable state, and I am sorry to report that it has not been a trouble free ride and tracking down the problems is ongoing as of mid-July 2014.

One thing I should mention is that before turning on the power for the first time I installed the provided heat sinks on the Zynq FPGA chips.

Submitted by Ralph McArdell on Thu, 10 Jul 2014 16:58:45 +0100
Updated Thu, 27 Nov 2014 11:30:30 +0000

In early May 2014 I finally received from Adapteva [1] my Parallella Kickstarter project [2] mini-cluster reward of 4 Parallella boards plus network switch, power adapters, cables etc. The reward was originally supposed to be delivered in May 2013 but suffered many delays and setbacks, as documented on the Parallella website [3] and forums [4].

Submitted by Ralph McArdell on Wed, 25 Sep 2013 18:01:46 +0100
Updated Thu, 27 Nov 2014 11:30:05 +0000

I have been adding support for peripheral types to my Raspberry Pi C++ peripherals library[1] and as a result have been reading the BCM2835 ARM Peripherals data sheet document[2] rather closely as well as the document’s errata page on eLinux[3]. I, like others, have been bumping into documentation errors – and even added one to the eLinux list errata.

Submitted by Ralph McArdell on Sun, 04 Aug 2013 15:49:14 +0100
Updated Sat, 01 Nov 2014 11:19:26 +0000

I have posted some example code on GitHub showing the Shared Immutable, Exclusive Setup ideas discussed in the Comments on comments to Herb Sutter's updated GotW #6b solution (part 2) blog post to demonstrate the ideas:

https://github.com/ralph-mcardell/dibase-blog-sharedimmutable-exclusivesetup

Submitted by Ralph McArdell on Mon, 08 Jul 2013 15:53:13 +0100
Updated Mon, 12 Oct 2015 08:52:41 +0100

Previously[1] I wondered, from musing when reading Herb Sutter’s updated Guru of the Week 6b[2] article, how one might – in C++11 – enforce a concurrent usage pattern in which an object can only be modified after creation by the creating thread until all modifications are done when the object becomes immutable and concurrently accessible. Concurrent access before an object becomes immutable is considered an error as are attempts to modify an object that is immutable.

Submitted by Ralph McArdell on Fri, 31 May 2013 16:49:05 +0100
Updated Thu, 16 Jul 2015 10:11:41 +0100

I have been following Herb Sutter on his Sutter’s Mill[1] website and while reading the solution and comments to the posted solution to GotW #6b Solution: Const-Correctness, Part 2[2] some thoughts popped into my head.