After fixing the bibliography to get it to work with
amsrefs, I then spent some time trying to debug the final end-of-document page which contained nothing but an empty ruled box. After much examination both of the template and of the example document, I found a bit of code that inserts the contents of
\jnlcitationon the last page; but because I'd omitted my self-citation, the template had added an empty box on a blank page.
With these problems resolved, I now need to set the
\articletypeproperty — I've emailed the editors for suggestions — and I should be done. Rather annoyingly, I haven't been able to do any of this at work because our version of LaTeX is so old, the majority of the supporting packages needed by the template are either missing or cough up an endless stream of errors when involved. MacTex, on the other hand, works flawlessly straight out of the box.
Fortunately, the circumstances of the problem were relatively clear and I was able to make a note of the affected jobs prior to purging them from the system. This meant that I was able to target the stale ALPS reservations left dangling by the job failures and immediately remove them with
apmgr cancel. This wasn't entirely successful: around 40 ALPS reservations went into a
pendCancelstate and refused to clean up despite restarts of various daemons and an
Eventually, I concluded that discretion was the better part of valour and simple placed all the affected nodes into
admindownto prevent them from being used. When I resumed the work, things started to run without encountering the any of the dreaded transient MPP errors we normally see when ALPS and PBS drift out of alignment, and I was finally able to go home, a couple of hours later than planned.
Once again, with the course more constricted and constrained than usual, I started slow and cranked up the pace to finish in an adequate 20:32. The course was slightly longer than normal — the marshals respsonsible for the field section had been extremely diligent and marked it out so that it went right into the very corners, erroring on the side of too long rather than too short; a decision I very much agree with!
Despite it being my 70th run, I can't feel too smug: there was someone there celebrating their 400th run! An amazing achievement. Looking at their recent runs, it looks like they're doing a grand tour, running at a different place every weekened, with Exeter happening to coincide with one of their big numbers. And rather charmingly, they'd brought along cake to celebrate!
My solution is simply to act completely baffled until they come up with a second name and a job title, regardless of whether I know the person involved or not. Mind you there have been occasions when I've responded like this only to discover they were talking about someone who sits at the next desk over from me; unfortunate, but I think formidable reputation for not being a people person allowed me to get away with it...
We begins with the events of Rose Franklin's eleventh birthday. Out late, riding her new bike, she heard a noise and woke up hours later in a pit surrounded by walls covered in glowing glyphs and lying in the palm of a giant metal hand. Seventeen years later, after previous attempts to understand the hand and its associated glyphs have come to nothing, Dr Rose Franklin is in charge of the team tasked with cracking the mystery of the hand.
The story unfolds through a series of conversations between an unnamed official and the various different members of the research team. Firstly we have Rose, who claims to have drifted into her position through chance; she had demonstrated a talent for science before the events of her birthday and ascribes her academic success to a desire to impress her father. Nonetheless, Rose is responsible for the breakthrough that allows the team to locate the giant's remaining body parts.
Secondly we have Kara Resnick, brilliant helicopter pilot and dysfunctional human being, who gets seconded by the backer to fly the missions needed to recover the body parts. Thirdly, because every pilot needs a good co-pilot, Kara's colleague Ryan Mitchell, a straight up guy with a terrible crush on his team mate, is recruited to fly with her. Fourthly, because no-one has yet to crack the mystery of the glyphs, we have Vincent Couture, a brilliant young Canadian linguist with a vast ego and unshakable sense of self-belief.
And ultimately, masterminding it all, we have the official, the backer, the person who remains so anonymous that I'm not sure we even get a gender. The most we ever learn about them is that they were an English literature major — a fact they, perhaps jokingly, claim that not even the president knows. Always a full five steps ahead of everyone else, the backer has plans within plans within plans, always seeming to know precisely what stimulus, what promise, what threat, is required to get the answer they need from their current interlocutor.
Sleeping Giants starts as an intriguing first contact story moving through something a bit more like a political thriller — albeit one where the stakes are deeply personal to the people involved — and ends up with something that wouldn't be out of place in Pacific Rim. But what really makes it work, I think, is the inscrutability of the backer: they manage something close to omnipotence through the clever deployment of soft power; and while we have the advantage of seeing the limits to their knowlege at a couple of points, the other characters frequently see them as close to omniscient.
Ultimately, though, Sleeping Giants did everything I asked of it: it greatly eased my time at Heathrow and smoothed me through the first part of my flight, preventing me from having to resource to the horrors of the entertainment system. I'm already looking forward to the sequel...
With that on the record, its time to get back to today's run. Having had a couple of weeks of heavy duty running and with yet more flood defence work limiting the width of the path, I wasn't expecting much from today's run. I started very slowly but after catching up with D at the bridge, I cranked the pace and finished in a respectable 20:23.
Working under this weight has been really hard. I have a health insurance plan right now with a $5k deductible, which means I paid $1500 for meds last month. Under the new plan, I could be charged like $20,000 a year just in premiums. I could have a $50,000 deductible on top of that, even on an employer plan, because all those regulations that the ACA made to keep insurance companies honest are very likely to go away, because they want people like me to "pay their share."
Newsflash, folks: the whole point of health insurance is to have it cover you in case something horrible happens.
Something horrible happened to me.
The rhetoric coming out of this bullshit regime is like saying that the house insurance you bought isn’t going to cover damage from a fire because you should pay your share. Ummm… like… that’s not how insurance works. It’s literally hedging one’s bets against disaster. My disaster happened already.
The whole essays is required reading. Hurley is characteristically open about her struggle to balance work alongside the problems that life, health, and a disfunctional system, have dished out...
Attempting to buy a ticket for the journey to Paddington, I noticed that all the most prominent options were for the Heathrow Express. Initially I accidentally selected one but I realised my mistake when I saw the eye-watering price of 23 pounds for a bare 15 minute journey — surely only someone with serious jet lag and a complete lack of knowledge of the value of the pound would opt for such a thing! Hunting around, I found the Heathrow Connect option which, at a merely wince-inducing 10 pounds for 25 minutes, represents considerably better value for money. Even more so because, when I got to the platform, I found that the next Connect was in three minutes and next Express was due in 10, completely nullifying the difference in journey time.
Getting to Paddington at around 12:30, I decided not to wait until two for the train I'd booked a seat on and instead I hopped on the next one bound for the westcountry. After what seemed a very short journey — it took me almost exactly the same time to get to Exeter as it took me to get from Redmond to SeaTac — I was back at St Davids and it was just 25 minute walk — albeit uphill and 20kg of baggage — home. Fortunately, the weather was dry, it was definitely warmer than Seattle, and after spending the last 22 hours in transit, I felt like I needed a chance to stretch my legs.
So that's it: home safe after a fun but ultimately pretty uneventful trip. Now all I have to do is resync my body clock, currently 8 hours out of alignment, with British Summer Time...
After one last quick shop, I disposed of a few things I didn't want to take back with me, including my 3 year-old ASICS which were in the process of going into holes and had been brought precisely because they could be safely chucked at the end of the trip. I'd already managed to re-gift various parts of the conference goodie bag by returning them to the CUG Office — the mini power strip that when from a single US-style socket to two USBs and, less helpfully to me, two more US sockets — putting my return baggage weight in line with my departure weight.
(On the way out, as I was checking my hold baggage, the person at the desk noticed that my bag came it at around 7kg and congratulated me for travelling light. I replied that I didn't think I was and that I'd come to suspect my hand baggage, which contained both my camera and my brick of a laptop along with sundry other bits of lighter gadgetry, was actually heavier!)
The journey to SeaTac via public transport was actually pretty smooth. I checked out, walked the kilometre or so to Bear Creak bus stop, and caught the bus sometime after midday. Able to sit by a window, I watched with interest as 545 wound its way through Redmond and then on to the 520 and across Lake Washington to the city. Having scoped out the journey beforehand — thanks to T for making me aware of Rome2Rio — I stayed on the bus as it made its way along Stewart, I got off at 5th and Pine, turned left and found myself outside Westlake Station.
Westlake was something of a surprise: I bought a ticket for the Link and descended to the platforms, only to discover a bus waiting there. I thought somehow I'd gone to the wrong place, but the presence of rails and Link timetable reassured me. Not long after, a tram pulled in to the northbound platform, finally convincing me that I was in the right place. (A subsequent check on wikipedia confirmed that the Downtown Seattle Transit Tunnel is used by two different types of public transport!)
The train arrived and, after a number of close stops in downtown, sped up as it went south past the stadiums and SoDo, west past Boeing Field, and through Tukwila — I think Intel have only just killed off Itanium! — and on to SeaTac, arriving with a hour in hand to check in. All in, I think the journey took a little over two hours and was as smooth as I could have wanted. I'm glad I didn't try and use public transport on the way out because I'm not sure I could've spared the time, but considering the difference in cost — it was a tenth of the price of a taxi! — it was well worth using for the return journey.
After spending a few hours at the airport, I made it through to my gate and we boarded dead-on 5pm. Despite the presence of a group of nerds clearly travelling back from Microsoft Build 2017, flight was nothing like full — they announced they had 184 passengers, well under the 300-odd capacity of the 787 — so we had plenty of room to spread out for the night.
After spending the morning exploring Redmond Old Town and the Saturday Market — conveniently located in the same place as the mini version staged for CUG — I decided to walk the four or so miles to the local branch of Vertical World. Despite getting mildly lost on the way — I turned right instead of left and found myself at the start of the powerline trail which I'd run a few days ago — I located the centre in an industrial building tucked away at the back.
After signing in — a guy sitting on a bench by entry said, "After going through all that, you ought to have clearance to meet the president!" — I hired some rather slippy shoes — this is not to dis Vertical World: using someone else's shoes is always a bad experience — and got on with some bouldering. After going through a warm-up, which was enough to persuade me I needed a chalk bag — which they lent me for free! — I worked up to the point where I crushed a bunch of their V5s. I'm not entirely surprised because it matches comfort zone, but you never know how one centre's grading is going to carry over to another and if you're not familiar with the house style, it sometimes takes a while to get to the point where you can send stuff with confidence.
I didn't try any routes because I didn't notice that they had auto-belays until I'd signed in for bouldering. But when I checked the grades and attempting a quick conversion from YDS to French grades, I decided I probably wasn't missing anything and stuck with my original plan. After putting a few hours, I started to feel tired. Acutely aware of the walk home — which, coming on top of the morning's run, was definitely a contributing factor to the tiredness — I called it a day and headed back to the hotel where I started repacking my stuff for the return to the UK.
After an extremely efficient bus journey, found myself in Seattle where I set about indulging in various acts of tourism. My first task was to go up the Space Needle because, well, I was in Seattle, it's an iconic building, and it was starting to rain!
Luckily, the truly torrential rain only kicked in once I was in under the roof that sheltered the queue of people waiting for their turn at the top of the tower. The wait, which I didn't mind because (a) out of the rain and (b) English, was enlivened by some interesting details about the construction of the tower, none of which had really occurred to me before.
The view from the top are well worth the wait and the panoramic view of Seattle really puts the city in perspective. Here's a rather murky view of downtown from the Needle:
In the distance are CenturyField and Safeco Stadiums. With weather like this, it's easy to see why they decided to put that massive, retractable roof on Safeco...
Once the rain abated and gorping at the view started to get old, I returned to ground level and walked my way around Seattle. After exploring the park around the Needle I went through Belltown to Pike Place Market, which the guys from EC had told me to check out. It was epically touristy but fun for all that, with a big queue outside the original Starbucks — actually wikipedia says they moved there in 1976 but at that point they only had the one branch, so I guess it counts?
I spent the rest of the day wandering around downtown and the down to the waterfront and back northwards. Along the way, I managed to take a nice photo of the great wheel with storm clouds and view across the Sound to the Olympic mountains to the west:
Deciding that the time had come to return to Redmond, I realised I had only the haziest of ideas where to catch the bus from. I wandered back towards where I'd got on and eventually remembered that the 545 stopped at 4th Ave and University. Fortunately, I soon stumbled across a series of buss shelters and, within minutes of finding the place, my bus showed up. It was empty enough at University that I was able to get a seat but things changed as soon as we reached Pike Street, where so many people got on that it took the driver a couple of goes to get everyone to pack themselves far enough down the bus to allow everyone to get on. After a squashed voyage as far as — I think — Overlake Transit Centre where lots of people got off, the bus looped north around Redmond and I, like a fool, got off at the TC instead of riding all the way to NE 76 and 177th which was much closer to the Redmond Inn.
Still I figure the walk did me good: my Garmin tells me I managed just under 30km today and although some of that includes my morning run, it still means I did an awful lot of walking today!
After a quick lunch, TL took himself off to the airport, reverse his journey on public transport. Meanwhile the guys from EC hung around until mid-afternoon before hopping in a taxi to take them to SeaTac.
With people starting to thin out, I went to an interesting set of sessions on system regression testing. In the first case, this involved using Jenkins to drive a series of test of jobs. In the second, it involved a custom Python framework developed by CSCS and, again, deployed through Jenkins to allow them to confirm the correctness and performance of their systems both routinely and after system maintenance.
In the second session of the afternoon, I followed the IO track, and attended an extremely interesting talk on tuning HDF5 IO based on the number of tasks writing to each file. The second talk was about simulating the IO patterns of an application which contained sensitive elements which prevented it from being used by external benchmarkers. The third session was an intriguing piece of blue-skies thinking from Cray about the future of file systems; the gist of which seemed to be that a great deal of our current performance problems come from the need to support a strict POSIX interface.
With that done, there was time for a short talk from someone from Shared Services Canada — the Canadian government's IT department! — before the close of the conference and the distribution of various bits and pieces that the organises claimed they didn't want to take home with them! With the day at an end, I got talking to the SSC person about experiences with Cray and with the Power 7 — they're just in the process of migrating off their IBM. I also discovered that he hadn't been able to confirm his travel until a few days before and been forced to find a hotel some distance from the Marriott, with the consequence that he'd been accumulating taxi fees of around $50 a day. Ouch!
Despite settling in with the intention of enjoying Arno's keynote, I managed to get distracted by crisis back home: a cosmetic change I'd left for someone else to implement had revealed an underlying bug in PBS. After digging through back traces, I located a
getattr()which attempted to access a resource which ought to have existed but which, for reasons that were completely unclear, did not exist in some cases. I scraped enough together to allow the site people to raise a bug and went for a short walk with what remained of the time before lunch.
Redmond's Central Street Plaza is rather attractive but it's obviously still in the process of populating itself. There were a few candle shops, some food outlets, a couple of lingerie stores, and an extremely impressive and shiny Ducati dealership. Fortunately I was able to restrain myself!
The afternoon featured my contribution to the conference. I skimmed my powerpoint presentation for the first time in a month and a half in the break before the session and found myself frantically trying to remember what I was going to say and cursing myself for not practising beforehand to get the timing right. In the end I needn't have worried: the presentation was very smooth — although I spent more time look at my laptop screen for prompts than I did gazing into the audience! — and I came in almost precisely on time. I got thumbs up from both SS and TL in the audience, and a solid set of questions which showed that the audience had been listening to what I'd been saying and hadn't completely misunderstood my first point.
The session was followed by a BoF on Caribou, Cray's Lustre analytics package. There was a demonstration using CSCS's test machine which showed the basic functionality of the package but it is clear that a number of features still need to be developed — in fairness, the contributors were open about it being barely out of alpha — and the inability to use proper job information seems like a fundamental flaw when you've got more than one cluster attached to the same Lustre appliance. Still, it's early days and it's definitely a step in the right direction.
Without time to take my bag back to my hotel, T put it in his room for safe keeping while we went for the traditional CUG night out at Chateau Ste. Michelle a few miles downriver. The evening was rather nice: we were greeted with a glass of sparkling wine and various plates of nibbles — once again, mostly meat and Dungeness crab cakes! — followed by a sit-down meal in a nicely done dining room. Randomness meant I ended sitting next to Andrew Barry and a Finn who'd asked some very perceptive questions at the end of my session, while everyone on the table was fine company — one of the others said he recognised me from my morning runs, because he'd been out cycling the trails most days at around the same sort of time.
The evening passed pleasantly but it was a little embarrassing, when you don't drink, to have the wait staff come round to pour out a different wine with every course. But at least I wasn't the only one: CW said much the same thing and I'm pretty sure that a couple of people had opted out entirely on the grounds that they didn't drink. I imagine, as not drinking becomes more common, that big events like this will become a bit more sensitive to the fact, but at the moment it reminds me of what it used to feel like to be a vegetarian...
After half an hour or so — including a very scenic trip across Lake Washington, complete with a regatta of small to moderate sized yachts — the bus took us past the impressive sight of Safeco Field and it's enormous retractable roof — currently open — and down 1st Ave South to the Living Computer Museum in SoDo.
The ground floor — first, if you're American — contained a small, ersatz bar and a series of interesting exhibits on robotics and the history of computing. As with Sunday's event, I spent most of the first part of the evening fending off offers of meaty snacks and endless Dungeness crab cakes — a name which confused me no end until I discovered Dungeness, WA was a distinct and different place from Dungeness in Kent!
Suitably plied with drinks and snacks, we then gathered round the far end of the floor to listen to museum directory Lath Carlson talk about the place's history and to reveil some new exhibits. The first was the Cray 1 which had until recently been on display at Cray's offices in St Paul and which had now been placed on permanent exhibition at the museum:
Unfortunately the machine has had too many parts removed to allow it to be restored, but it's still an imposing and beautiful piece of equipment.
The second addition of the night was just as exciting: a complete Cray 2. Introducing the machine, Carlson said, "The machine is complete and we hope to get it up and running as a living machine. But we're going to need to upgrade the building's power supply first... Which I guess is fairly common, because I'm hearing a lot of knowing laughter out there..."
Upstairs, in the lab area, were a superb series of vintage computers. Although to my mind, as an HPC version, the Crays are the most iconic machines in the collection, the IBM S/360 looks more like the classic 1960s notion of a computer:
But the really big beast of the museum has got to be the CDC 6600 — the first true supercomputer, also partly the brainchild of Seymour Cray in his Control Data days.
The curator responsible for doing maintenance on the machine showed us a module from the 6600 and described the process of disassembling it to access and replace some of the transistors — yes, you read that right: transistors! — used by the machine. (ETA: Back in the UK, I discussed this with MI who worked for CDC in Canada and he said, "Yeah, back in those days you needed real skill to be a hardware engineer...")
As the evening wore on, we headed back downstairs for a buffet which, although meat-and-fish heavy, featured a superb range of local cheeses. A few of us got talking to one of the curators about the museum's outreach program and discussed the problem of the lack of women in STEM.
The curator pointed out that things hadn't always been quite so imbalanced: the museum had a display of early Barbies sets which showed the iconic doll working with a series of computers with, in each case, the set paired up with the actual machine Barbie was using.
They also noted that in their robotics outreach programs, although the kids' initial responses were in-line with gender stereotypes: they split into groups, with boys wanting to do something completely impossible like make the robot fly, the girls were initially more sceptical until they understood the purpose of the exercise, at which point they'd usually solve the problem — unlike they boys who'd become dejected when they couldn't achieve their unrealistic goal — and then, on the second day of the event, the gender boundaries would dissolve and the girls and boys would be more likely to work together to finish their assigned project.
At the end of the evening, after picking up a rather nice commemorative t-shirt, we got back on the buses and made the return trip to Redmond.
Today's conference opener was a plenary session from Douglas Kothe of Oak Ridge, which managed to cover all the usual bases of a high performance computing conference. For these things have an established form: a discussion of why we need N-scale computing, where N has shifted over the years from tera- to peta- to exa- with the relentless advance of Moore's Law; a skim over a series of classic physics problems, all of which will benefit from improved computing resolution, many of which seem to involve fission and fusion reaction models, and most of which are being worked on by colleagues of the speaker; and finally a call for more money for N-scale computing and an endorsement of why Vendor X is perfectly placed to do it. Regardless of my slightly cynical take on things, Kothe was a good speaker and his talk was engaging and important for someone to stand up and really sell the benefits of faster, bigger, and better computing.
The rest of the morning was taken up by a Cray corporate update. The less said about that, the better.
The afternoon was a bit more promising with a decent technical session covering everything from remote support to Thomas' paper on using XDMoD to run accounting analytics — an interesting bit of work, even though I say so myself. I then went to a session on Spack — a package manager about which I knew precisely nothing — a good presentation on system regression testing at KAUST, and something on tracing python usage at Blue Waters to determine who was using what and how heavily.
I skipped the BoFs — choices included programming environments, burst buffers, XC system management, or a discussion with the CUG Board — in favour of walking back to the hotel to drop off my laptop and pick up my camera ahead of the evening event at the Living Computer Museum — something so awesome it deserves its own post.
Meeting CW for breakfast in our hotel, we walked to the conference and settled in for the morning sessions. Having attended the CLE6 tutorials last year and doubting whether there was likely to be anything new, I instead opted for NERSC's shifter session. The technology was interesting, not least because it solves many of the python performance problems seen on Lustre systems, and there were some interesting tricks to allow the containers to make use of hardware specific libraries on Aries systems.
The afternoon was taken up with a tutorial session on analytics and machine learning. The analytics part involved a series of sessions using Apache Spark on Cori with a range of different language bindings. There was an interesting mention of using conda to manage python installations and a session on R — Cray have added version enhanced to use their tuned versions of the BLAS libraries to their libsci bundle — followed by an overview of Cray Graph Engine which, while no doubt deeply fascinating, was rendered almost entirely incomprehensible by an abrupt attack of jet lag. The rest of the afternoon is so shrouded in exhaustion that I can't remember a thing about the rest of the session.
The evening's event was a version of Redmond's Saturday Market complete with food stands, a band — Acoustic Transitions — and an ice cream stand. As the night wore on, I had reason to regret my decision to wear a t-shirt: the wind grew increasingly cutting and I was eventually forced to cuddled up with one of the patio heaters to avoid freezing.