Tasty, tasty RAM
One of the tests I've been running in my last week here at HP requires provoking a low memory state on the device under test, to see if it correctly reports this and otherwise behaves well when all its RAM has been gobbled up. A simple scenario, but not the easiest to bring about: how can you reliably consume system resources?

Exacerbating the matter is that the servers under test run a very cut-down Linux distribution as their operating system - most of the usual utilities and programs one would expect are missing or stripped-down. No gcc here, my friend, not for miles. In addition, one cannot easily move files to or from the device under test, so compiling on my own workstation and ferrying the binary across would be impractical - not impossible, but sufficiently obnoxious to make me seek alternatives.

So here's my solution, written using a pair of scripts: one a plain old ordinary bash script, and the other some quick and dirty perl. First, the perl script. This simply attempts to open a file (myfile), reads it into a scalar, and then sleeps. Run on its own, it should consume as much RAM as the file in question (plus some overhead for perl itself, natch.)


use strict;

open (INPUT, '<', "./myfile") or die $!;

my $file_contents = do { local $/; <INPUT>};

Secondly, a bash script, which first creates myfile by copying 100MiB from /dev/zero. Once this has been created, it will infinitely begin launching instances of perl running the above script, at a rate of one per second. If the user sends a SIGINT by pressing Ctrl+C in their shell, it cleanly kills all instances of perl and then itself. (This should be improved, really, as there could potentially be other perl processes running which shouldn't be touched. Killing them would be A Bad Thing, but I'm lazy.)


dd if=/dev/zero of=myfile bs=1024 count=102400

# We want to tidy ourselves up on Ctrl+C
trap control_c SIGINT

        echo SIGINT received, killing perl processes.
        killall perl
        exit $?

echo Filling memory, Ctrl+C to stop.
while true; do
        sleep 1
        perl fillmemory.pl &
Now, one might well ask why I've used two scripts here, where one would be cleaner. When RAM begins to become exhausted (approaching the 600MiB mark on an 8GiB test system), the perl processes begin to die with "Out of memory!" errors. Although I've tried adjusting the limits specified in ulimit, they still commit suicide when resources are scarce. By allowing the shell script to keep launching them, we prevent the entire test from stopping when one perl script is lost.

I'm highly conscious that this is probably not the best way to go about this test, and I might still write something better in C - if only to prove that I can. If anyone has any suggestions or improvements, please do say so in the comments - I'm always grateful for tips or tricks which can help me be a better coder. For now, however, the above scripts worked well enough to run the tests.

Le musique rock
I've not nearly seen enough live music, and since they were one of the first bands I fell in love with (after some truly shocking lack of taste in my formative years), Manic Street Preachers were a shoe-in for being the one I chose to see first; and they didn't disappoint, performing an astounding two-hour set back in June 2007.

Now apparently they have a new LP ("Postcards From A Young Man") due to come out, and are touring in support of it. However could I resist? One ticket for their Bristol performance, duly ordered. Huzzah!

(Studious readers may recall my most recent attempt to see a live act, which didn't end terribly well. We hope for better results this time around.)

Quiet moments of joy
Miles T.F. Baxxter: Good night, sweetie fox! You have a good night, sweet dreams, and remember that I love you lots. Not a day goes by when I don't think / daydream about you. *kisses and hugs*

It's little things like this that make me so giddy and delighted to have so sweet a foxie. Baxxter, I feel just the same about you - even if I can't articulate it as nicely as you did. I love you, very much.

That's that, then
As hinted at previously, I've now been issued a contract for, and have accepted, my old job at my previous employer, to begin at the start of July. While I did have my reservations - and while I've heard not a few changes have occurred there - I honestly don't feel I can be happy where I am. Hopefully I can slot back into my past role without too much incident.

Meanwhile, the jaunt to the MCM Expo on Saturday was a success. Despite there being absolutely no airflow whatsoever, which caused the fursuiters no end of discomfort, I think we all had an enjoyable time. Me being me, I completely forgot to take anything to have signed, but managed to timidly say hello to warren_ellis anyway. Hopefully he was amused by the sight of a nervous fan wearing paws and a tail.

I also managed to pick up the complete Azumanga Daioh on DVD; annoyingly, it's region one, so will need to resort to the almighty VLC to play them. Most likely I'll just rip them to my Mac and play them through iTunes. I also got a sketch of a chibi arctic fox for my boyfriend, which I hope he'll like - will need to find some way of sending it to him without risk of damaging it.

Something for the weekend
Tomorrow, I'll be heading out to the London MCM Expo, a gathering of comics, film, television, gaming, and anime aficionados held in our fair capital. (I do seem to be spending rather a lot of time there, of late. Most out of character.) With any luck, it'll be fun, even if I can see myself spending all my worldly income on the first shiny collectibles I set my eye on.

(It'll also be the first proper convention of any sort I'll have been to since Games Day 2000, and if I enjoy it, you never know - I might make a habit of going. My boyfriend and I were hoping to go to Euroference this year, but due to a lack of funds on both our parts, we reluctantly chose not to, but fully intend on going to something next year - either EF or the next Confuzzled.)

Plus, it's a long weekend - the perfect opportunity to stay in bed all day Monday. I probably won't - since moving to Bath I've been more active of my weekends and days off then I ever had been before, even as a layabout student. (Especially as a layabout student.) I've a group of genuinely nice friends who coax me out most opportunities they get, and for that, I'm grateful - even if it costs me a lie-in of a bank holiday. You've got to make some sacrifices, I suppose...

Abort! Abort!
You might have noticed that, despite having started a new job all the way back in April, I've been somewhat quiet on that front.

It's not because it's the greatest job ever in the history of all things, but because there's so little to actually discuss. Despite having been there for over a month, I still feel as if I'm a spare wheel, sat at my terminal most days without anything to actually do. A lot of my time is spent furtively surfing the web, not out of procrastination but tedium - and when there actually is something to do, there's the temptation to stretch it out for as long as possible, just so I've something to do.

Much as there were the occasional stresses at my former employer, I could rarely say I had nothing to do. More importantly, it was closer to where I live - so I could saunter to and fro without being reliant on the railway - and they were by far nicer people to work with.

As luck would have it, I've been informally approached about possibly making a return once my contract with my present company expires in June. I'm giving it very definite consideration...
Tags: ,

One week later, and my mate has now returned home to his native Norway, after a very pleasant week in my company (at least from my perspective). (Actually, he headed home on Saturday, but I've only just now been able to sit down and type this.) Despite public transport doing its best to get in our way, and a lack of thorough planning on my part causing some stress at times, I think all in all it went rather well; though I do worry that I wasn't the best host in the world, it was very nice to be with him again, though now I miss him rather terribly.

His arrival in London was on time, and he appeared bright-eyed and bushy-tailed at London Liverpool Street (having arrived at Stansted Airport) to a warm hug, and his first introduction to that great British institution, the Tube. One 25-minute jaunt to Paddington later, we then needed to negotiate our way through unfamiliar streets to find our way to hotel number one, the Hyde Park Premier. However, due to his early arrival, we were still one hour early for checking-in; and so, leaving our luggage at the hotel, we set about exploring the local area, and despite taking one wrong turn we managed to give Hyde Park itself a pretty thorough going-over. Naturally, the weather being as nice as it was (beautifully sunny), I couldn't resist buying an ice cream for him, thus introducing him to British institution number two: the 99.

After our impromptu walk in the park, we descended once more on the hotel, and checked in. It didn't take long before we were cuddling on the bed: I'd truly missed that gentle intimacy, being able to hold and be held. I am remarkably susceptible to curling up and murring contentedly at the mere prospect of a hug. We did spend rather a lot of time doing so, though, as we soon found that an hour had gone passed, and we had an appointment with the theatre at 8pm!

So again we found ourselves in the centre of London, firstly exploring some of the comics shops one can find on and around Charing Cross Road. My boyfriend, being the resourceful fox he is, had brought a list of everything he was hoping to buy, and we found many of them at Orbital (shameless promotion, there). We were a bit rushed, and weren't able to browse for too long or even get a proper sit-down meal together due to the sheer business of the city, so ended up having takeaway Chinese before we headed for Wyndham's theatre for Avenue Q. Despite generally not liking musicals, I thoroughly enjoyed it! Never has a puppet-led stage show been so amusing. After that, we retreated back to the hotel to settle down for an affectionate evening in bed.

Sunday was spent stashing our luggage at Paddington station and hitting the city once again, after having a rather nice full English breakfast at a café somewhere in Westminster. Again we explored the comic shops, as well as the large Oxford Street branch of HMV and all the little computer specialists on the Tottenham Court Road. (It turns out that it is impossible to buy 8cm CD-Rs in any retail store in London Britain the known universe.) This time, we were limited by needing to get a train home at 7pm, meaning once again we weren't able to have a huge meal - rather, we settled for a rushed pizza at Paddington station before hopping on board the train home. I fear that sometimes I can be rather over-anxious, hurrying things when there's plenty of time, and hope that it didn't seem like I was pressuring my boyfriend to finish his pizza in record time.

While we'd each booked seats on the train, they weren't in the same carriage as we'd gotten them individually. We didn't anticipate there being too much of a problem - with any luck, we could sequester a non-reserved place near to one of our booked seats and take that - but the train turned out to be at least 50% over-subscribed, with hordes of other passengers crowding the aisles. I ended up standing for most of the journey, until a fellow commuter left his seat at Swindon and let me sit down next to tfbaxxter . This was to be the first of several grievances with public transport, but at least we did at last get into Bath, and were able to haul it the mile from the station to my den.

Monday was thus spent exploring Bath's city centre, and trying to track down yet another comic store - which turned out to be something of a disappointment. We found the store (eventually - it took some exploration), but it was quite dilapidated, and had very little in the way of interesting stock. Prices, too, seemed excessive, with imported food being extremely pricey. However, the day went well, as the weather was gorgeous and Bath is a beautiful city architecturally. We would return to Bath on Wednesday, firstly to explore the eponymous Roman baths, and then to introduce Baxxter to my local group of furry regulars, with whom I do so much hanging out. This went well on both fronts - I hadn't visited the Baths in years, and it was an interesting visit with plenty to see and do. The interactive tour guide worked a treat, and much fun was had trying to synchronise listening to them together. The mini-meet involved mostly sitting around in Bath's Victoria Park (never a bad thing), and then descending on Pizza Hut for a slap-up evening meal. (With profiteroles for dessert! Yes!)

Meanwhile, on Tuesday, we made our way to Bristol, my former adopted home as a long-haired student layabout. Here we had plenty of shopping to do - or at least, plenty of shops to do it in - and since I'd lived in the city for four years, I actually knew my way around to some extent. Bristol is not the most photogenic of cities in my eyes, so photo opportunities were limited, and it has fewer nice-looking landmarks on offer in the centre, but I was at least able to guide Baxxter around with a little more local fluency. I did, however, make the classic mistake of forgetting to look up the return train times, leaving us with the possibility of being somewhat stranded! Using all my vulpine ingenuity, I hatched a cunning plan: instead of waiting to return to Oldfield Park, our original destination, we bought singles from there to Bath Spa. We then took an earlier train to said station, ate at the local Wetherspoons (vive le beer et burger), and then proceeded to the adjoining cinema, wherein we saw Kick-Ass. And there was much rejoicing.

On Thursday, we made the trek up to Manchester - experiencing another problem with our good friend, National Rail. While this time our seats were next to each other, the train driver called in sick at Bristol. While half an hour later the train coming up from Plymouth was able to push us as far as Birmingham, we then had to wait another half hour before the next scheduled service to Manchester arrived. We would have done better staying in Bristol and boarding it there!

Luckily, while the weather had taken a turn for the wetter, Manchester turned out to be a friendly and welcoming city - and a clean, well-presented, and not-too-busy one, either! Whenever we got lost, somebody was able to point us in the right direction, and we found our hotel neatly tucked away about 10 minutes' walk from Piccadilly Gardens. Dinner that night was a nicely romantic table-for-two affair at a restaurant on the famous Canal Street, which went very pleasantly indeed, and we had a preliminary romp about the city centre - returning the next day, our appetites suitably whetted.

After that, one final big event lay in store for us - Baxxter's big gig! It was to be his first and debut performance live, as normally he plays his music from the safety of his home and records it, instead of playing live. This took place at a small vegetarian café/restaurant, called "Fuel". The host of the evening's entertainment, and an online friend of Baxxter's, came to collect us (as we'd also be sleeping the night at his), and we set up in the upstairs part of the bar and begun practicing for the performance. (Well, I didn't practice - but moral support's never a bad thing!)

The performance went extremely well. There were two bands/acts before my boyfriend, both of whom were well-received, and then he went on to perform his 30 minutes (or thereabouts), to great delight from the audience who definitely seemed to enjoy his songs and banter. One particular song, a short piece hoping someone gets a new hard drive (and which lasted a full four lines), left the crowd in stitches of laughter, while others elicited applause and giggles where appropriate. I was very proud of him, and joined in with the applause after every song. He even managed to sell a few copies of his album, at a fiver a shot!

Then, on Saturday, the time came to begin the trek home. Our early-morning train from Manchester to London was surprisingly on time, and due to the luck of the draw, the cheapest tickets we'd been able to order were in first class. A 2-and-a-half hour journey was thus made slightly more bearable with free refreshments, comfortable seats, and complimentary wi-fi for the duration. Despite getting a little travelsick, it was on the whole a pleasant journey... ruined by then getting to London to find the Tube lines we needed were closed between King's Cross and Liverpool Street! Drat, and indeed double drat. Instead of a relatively straightforward Tube journey from Euston Square to Liverpool Street, we instead went from Euston Square-King's Cross, King's Cross-Bank, and then Bank-Liverpool Street. (We decided to disregard the warnings of elevator works at Bank leading to difficulties changing there. These are nervous times.) Thankfully, we'd accommodated for some delays in our timing, and so this didn't cause us any real hassle in terms of getting to the station to get a Stansted Express.

So it was that at 11:25, I bid my boyfriend farewell, hugged and kissed him, and waved him onto the train from the other side of the ticket barrier. I then made my own way back home, feeling tired, lonely, and wishing to see him again. It still hadn't quite sunk in by Sunday morning, when I rolled over in bed and wondered where he was. I do miss him, and wish it were easier for us to be able to be together; I want to hold his paw in public again, and cuddle him in bed. I love you, foxie.

What're you doing, Mr. Volcano?
With my boyfriend, tfbaxxter , due to be visiting on Saturday, I should be nothing but excited (and perhaps hoping the rest of the week would kindly get on with it and move out of the way), but instead I've been pre-occupied compulsively refreshing the BBC News headlines, hoping to find out whether air traffic is lightly to be flowing through the giant ash cloud of doom.

The current word is that the majority of British airspace will be closed until tomorrow at the earliest; they were yesterday hoping to have it open today, but another cloud of ash decided to show up overnight and spoil the party. Currently Ryanair claim that flights should resume across northern Europe by Thursday; please, please, please let this be the case. I might explode otherwise.

Update: Thank $deity!

These are the good times
Spent today strolling about in Bath, having a thoroughly nice day in some beautiful sunshine. It seems the weeks are grey and dull, and so our weather decides to make up for it come Saturday. I shan't complain: I spent most of the week indoors huddled over a terminal, so to spent the other two days breathing real oxygen seems a good way to compensate.

I have some new shoes, too. goodnews++;
Tags: ,

Messing about on the river
So it turns out I can't row. Who knew?

Saturday was originally intended to be a pre-furmeet get-together of the local Bath furs, the plan being we would hang out together for a bit and eventually retreat to one of our houses (cassiereynart, as it happens) for some Rock Band and general relaxation. We would then reconvene on Bath on the Sunday for the furmeet itself.

This all took place. There just happened to be about 16 other furs dropping by during the afternoon for a barbecue in Victoria Park. The technical term here is "Spook!". A great time was had, with Saturday turning out to have not only the best weather we'd had all year, but one of high spirits, dapper foxes, and plenty of lounging about on blankets listening to jazz. We're classy, honest.

And so onto Sunday, having slept on the floor (surprisingly comfortably), we descended again upon our fair city. The usual wait at the station turned out to be fairly short, and after a refreshing bite to eat and drink at Wetherspoon's, we set out on a boating trip on the Avon.

The boats were a mix of three- and five-seaters, with either one or two people rowing, respectively. Ours was one of the latter, so myself and another fur took to the oars and pottered up and down the river. I honestly didn't realise beforehand just how much work it is, and how hard it is on the upper body; staying co-ordinated with the other rower and with yourself requires a great deal of concentration, and the physical act of pulling the boat through the water is quite tiring after a while. I'd find that most strokes, one oar would be at a different angle to the other, or wouldn't be quite straight, resulting in a lot of swearing and frustration (not to mention water pouring over into the boat, soaking poor theodor).

Still, despite the difficulty, it was a lot of fun, and we retreated to the Hobgoblin (pub of champions) for the traditional post-meet quiz, wherein of our two teams came second and third. Hurrah! A successful end to a successful weekend.
Tags: ,


Log in

No account? Create an account