The Intel NUC

14 Apr 2014 • #

I want to love the Intel NUC form factor, but it’s just not working out between us. I acquired one of the original generation NUCs; it was great for a few weeks and then it melted. Thermal issues in the chassis (at nearly idle) destroyed the SSD. They came out with a BIOS patch for this later, but the patch amounted to running the fan full bore all the time and still couldn’t effectively evacuate enough heat from the chassis in practice. There were some other problems with this model, notably the lack of USB 3 ports and problems with the NIC performance degrading when the adjacent HDMI port was in use. Still, it was a first-generation product and I wrote off the issues. At the end of the day I was still in love with the form factor and performance. It was not blazing fast, but it was fast enough for my routine needs.

Next I picked up a third-generation Intel NUC. It worked fine as my primary server for several months now until today. For some reason the TSC spontaneously developed massive jitter problems, and linux disqualified it as a time source. This would be fine except the only other options available to Linux installed on this platform are jiffies and jiffies skew at a rate that even NTP can’t correct (my skew is several seconds per second at this point). A server that can’t keep time is more or less useless, so now I have another dead NUC. This is far more frustrating than the last time.

I have one of the original Gigabyte Brix models as well, and it still seems to be operating properly. Inexplicably it’s even smaller than the NUC itself, comes with less plastic (perhaps better thermal behavior) and onboard wifi (rather than a paid extra).

So, I was impressed by Gigabyte to this point and they announced their 4770R, which added room for a 2.5” drive, seemingly more thermal envelope, and a beast of a CPU compared to the previous offerings. The i7-4770R is a bit of a boutique part, but it’s got four physical cores, as bunch of cache, and decent clock/turbo performance. While I’m not often CPU-bound, having access to a little more muscle definitely comes in useful. Even dumb things like building this blog take minutes on my third-generation NUC, and take seconds on a faster CPU.

The problem is, the Gigabyte 4770R does not have the ability to actually manage the thermal envelope of the i7-4770R. The best it can do is make a ton of noise spinning an obnoxiously small fan (read: loud) to try to keep up before detuning the CPU. Given my experience with the NUCs to this point, running a hot chassis (especially given that that’s the reason why the 4770R was appealing: having access to more compute power) sounded like a good recipe for more lumps of dead parts.

The funny thing is I still have a perfectly functioning Dell T110 server. Here are its problems:

  • It’s huge
  • It’s many years old
  • It’s slow (an early generation Xeon) … despite all the fancy cache, Xeon-ness, and cores, in practice it’s slower than the first generation NUC
  • Its IO is slow (1st generation eSATA)
  • It doesn’t play particularly nice with solid state drives

So for my most recent server build, I got back into doing something I told myself I’d never do again: Building a PC. For about the same budget as a well-equipped NUC, I got a mini-ITX case & server motherboard, some ECC RAM, a zippy Xeon CPU, a modern I/O subsystem, full-size Samsung SSDs, two bondable Intel NICs, and KVM over IP + remote management/power. It’s got a bunch of nice and quiet 120mm fans, the disk performance is stupendous, and I suspect it will be a bunch more reliable than my experience with the NUCs. Pegging CPU, memory allocation, and disk IO doesn’t even raise the raise the thermistor temperature on the motherboard and doesn’t cause the fans to throttle up.

The downside is that even for a mini-ITX board and case, it’s about 40 times the size of a NUC. It seems like there are two ways to resolve this, but neither are particularly practical. The first is to build the NUCs out of more exotic (expensive) materials. If the entire sled was made of a bunch of copper instead of plastic, more effective thermal evacuation seems likely. The other approach is to dramatically decrease the TDP they’re stuffing into these chassis; that is happening, but far too slowly. The Xeon in my server build has a TDP of 77W versus the i5-5250U (in the newest, fastest NUC)’s 15W or the i7-4770R’s 65W. But, the Xeon delivers more computing horsepower than either and is a pretty cold chip under load in a mini ITX chassis.

At the end of the day, this is probably the last generation of building a server anyway – increasingly my needs could be served by an off-site virtual machine. But, for now my hope of a long and happy love affair with the NUC form factor seems to be dead.


11 Apr 2014 • #

M and I spent a week in Albuquerque. Dry and a mile in the sky, the weather was beautiful in March – sunny and cool, getting downright cold at night.

View from the resort.

We stayed at the Hyatt Tamaya. This is an excellent resort and hotel. The staff were all fantastic and the on-site restaurants were surprisingly good. The on-site nature trails, activities, sitting areas, and views of the Sandia Mountains were fabulous and relaxing.

The zoo was  lame.

We explored a bunch of museums and tourist attractions. Few were particularly notable. The ABQ BioPark was impressive for what it was: I woud not want to construct a zoo, botanical garden, and aquarium in a desert. However, compared to offerings on the coasts, things felt pretty dull.

The National Museum of Nuclear History has been on my list for years and was highly disappointing. The exhibits indoors are pretty lame and the outdoor exhibits are either in poor state, complete disrepair, or seem to be an afterthought (a Titan II is just sitting in pieces with no real effort or information).

The food was, in general, okay. What I love is that everything has some heat. What I dislike is that there’s not that much food that is particularly good and the emphasis on cheese and grease is hard to avoid. The green chili remains the popular choice, but the red chili is still where it’s at. The best food we had was at The Shed in Sante Fe and a The Corn Maiden at the Hyatt.

The only respectable winery in New Mexico is Gruet. Visiting was interesting; most of the winery’s visitors are not from New Mexico and there’s not a lot of foot traffic.

There are numerous breweries and a lot of them make rather good beer. La Cumbre, Marble, and Il Vicino were all a lot of fun.

The Sandia Peak Tramway was a bit of a tourist trap, but I can now say I’ve been on the world’s longest aerial Tramway.

Hey, a volcano. We were on top of this eventually.

Two activities stand out for the trip. First, horseback riding in the Santa Ana Pueblo was a treat. I rode a draft horse named Bob who was as tall as I was. Luckily he knew what he was doing.

At a thousand feet, give or take.

They look like ants.

The other was a hot air balloon ride. We originally had this scheduled early in the trip. After getting up well before dawn, we made it to the first launch site and a test balloon was moving far too fast for safety. At a second launch site things looked better and we unloaded the baskets, tarps, and envelops and started inflating and loading. A few seconds before launch the whole thing was scrubbed and we spent another hour packing up instead.

Inside the envelope.

The penultimate day of the trip things went a little better. Surface winds were calm and our launch went off without a hitch. Riding in a balloon is strange. It’s a very stable platform and incredibly peaceful. Highly recommended, given the opportunity.

View from the balloon.

Incidentally, tumbleweeds are real, and a lot tougher than they look in the cartoons. Also, road runners are real, and they are, in fact, chased by coyotes.

Dos Equis Balloon

Personal Trainer

10 Apr 2014 • #

As I reminisced, I started the year out of shape, overweight, and unhealthy. Three months in, it would be misleading to say that I’ve addressed any of those issues. With that said, I have made some progress.

M’s been going to a gym and working with a trainer once a week for well over a year now. I decided to join the fun in late January. As a result, I’m working out at The Norwalk Edge Fitness Club. It’s a typical mega-gym with no perks. There’s a functional locker room and a bunch of equipment. It seems like way too much equipment except when wanting to use a particular piece, in which case it seems like far too little. Load on the gym is increased since NYSC’s vacancy of a nearby location years ago. The place isn’t a dump or overtly dirty, but it’s definitely a no-frills mega gym. Going forward, my preference will likely tend towards a smaller boutique gym in the future, but this suits my needs for now.

The membership is inexpensive and comes with the usual horrible terms and conditions. I’ve had several gym memberships in the past and they were never in and of themselves particularly effective. What’s different this time is that I’m also paying a personal trainer.

Three times a week for half an hour, I work with a trainer, in addition to anything I do on my own time (usually interval cardio after training sessions). All in, then, my monthly gym bill is about $500. Independent of any results or intrinsic motivation, the staggering cost is enough to keep me working out for, at minimum, half an hour three times a week.

Compared to fumbling around on my own, professional training has me doing a lot of different things. I’m not in any sort of regular routine as much as a program. There are certain common themes at this stage:

  • Building core strength
  • Balanced approach (e.g. should see equal focus on shoulder pulls as bench presses)
  • Working up to squats and deadlifts

And about all I can guarantee is that virtually every session involves planking. I hate planking but this has also been an obvious area to observe progress: I can regularly plank for a minute now.

In combination with this program, I’ve been generally reducing my carbohydrate intake. Meals generally focus on proteins and vegetables and I don’t often have sweets. I’m not attempting to get to zero carbohydrates, but the key has been making the smart trade-offs when an options is available. The vast majority of my carbohydrate consumption now comes from wine, beer, and alcohol.

In combination, being more careful about my diet and working out has been my longest concerted effort to improve my health, ever.

I am still not healthy or in shape, but there is progress. Weight is down about ten pounds. Muscle mass is increased. The changes are minor, but I have to start somewhere. My goal is for body fat percentage, resting heart rate, and blood pressure to be in a good shape by year-end. What that means is anybody’s guess, but I’ll know it when I see it.

I don’t know that any of this has helped me sleep better, given me more energy, or improved my mood. I don’t look forward to going to the gym, but it’s something my body has developed a desire for – I don’t feel right when I’m traveling and miss it. I even ended up working out on vacation because it felt right. So that’s weird/good.

By year end I should have a better sense for how I feel about the effort, expense and progress. One asset of the training program is learning more things I can do on my own, but I suspect my motivation to keep doing those without the appointments would wane. If stuck in a rut, it’s hard not to recommend.

Stanford Networking Course

17 Mar 2014 • #

After my last online learning experiment concluded with me flunking out, it would be a lie to say I was eager to get back into the saddle. When I looked back on 2013 at the beginning of the year, however, I was not happy with the amount of self-improvement/developmental effort I put in.

So, I signed up for Stanford’s online CS144 course, “Introduction to Computer Networking.” It’s hard to provide a canonical link for this, but if curious one can easily find a particular example of the course materials/syllabus. I picked this course because I did not complete a networking course in school. There’s a story there, but it’s pretty short: I signed up for networking in school. The format at UIUC at the time was the class was partitioned into 4-member teams for programming assignments. The day before the drop deadline all three of my group members dropped the course … so I did too!

I am across the pass line prior to the final exam, so can safely say I’ve completed the course and programming assignment successfully. As the final exam is released and due while I’m on vacation, I’m not confident I’ll put substantial effort into it (there’s no impact on my standing in the course whether I get a 0 or a 100 on the exam at this stage). This is an interesting, if somewhat obvious, realization. Out in the real world with vacations and/or work trips, making time for limited-time portions of the course (such as exams) can be a real challenge. Most of the course material otherwise was released many weeks in advance of when it was due, making this less of a problem.

The information I have on the course is limited in many dimensions. Evidence suggests about 2700 people signed up for the course and about 900 completed the course at least through the first midterm. I Don’t know what the pass rate will be, but I suspect it will be relatively high. Doing slightly better than guessing on the exams and completing all of the quizzes successfully will get somebody past the pass line. Judging by the forums (likely not an accurate metric, but the best I have), most of the course’s attendees are students currently in higher education programs in foreign countries. The skill level ranges between folks with barely any CS and programming training to those that are highly educated and experienced. The majority of the forum traffic appears to come from the former population.

I am happy with the knowledge I gained from the course. One of the more interesting things about taking a class is the selection of the material. While I’m relatively capable at self-teaching, if I were to “teach myself networking” the results would be quite different. A lot of the time in the course was spent calculating out efficiency of a network bounded by a queue or explaining signalling and re-clocking theory. These things have little immediate benefit to me, but the intuition gained in working through the topics was quite valuable.

The rigor of the course is somewhat laughable compared to a “real” course in college. I would not say the amount of material taught is substantially less. However, the amount of effort required on homework and textbook reading was trivial by comparison. The exams are week-long and open-book/notes, with only 20 relatively simple questions. The only real difficulty there is in not making a stupid math mistake because of overconfidence (guilty as charged).

Cheating in the course would be trivial, with the only prevention of this the honor code itself. Since there’s no real reward for completing the course in the first place (beyond a digital document saying one completed the course), there’s little point in this … but my gut impression is that it’s rampant. The forums are full of questions that demand enough detail and explanation that it might as well be cheating. For nearly all of the challenging problems, the forums are full of detailed method explanations, getting down to the precise quantities and equations necessary. Still, students will ask for more detail to be spelled out in order to arrive at the correct answer. It’s somewhat disappointing.

The gem of the course for me was the programming assignment. It’s worth no points (in fact, it only awards a “with programming component” statement on the digital statement of accomplishment) towards course completion. It took a decent amount of time and was highly educational. The project was to implement a portion of a packet switch and was extremely well constructed. Very few of the programming assignments I encountered in college were this thorough or well-developed (the possible exceptions would be in my operating systems course when we had to implement a file system). Adding even more of these (the full course has four such assignments) would make the end result even more valuable.

It was interesting to discover that those administering/delivering the course were not compensated (beyond, I suspect, faculty compensation for the professors).

Based on just one data point, then, as a hiring manager I’m unlikely to take completion/attendance of a free online course particularly seriously. Like anything, it provides a good avenue for some potential questions. It also shows (potentially) an interest in learning outside of school. But, it barely even intimates any sort of guarantee about knowledge gained.

In any event, I’m glad I completed the course and it was definitely worth the time. I’m also glad that institutions like Stanford and the individuals involved in delivering the class are willing to make this sort of investment. It’s definitely not free or just a trivial transposition of work that’s already been done before.

2013 in Review

26 Jan 2014 • #

I was reminded that it’s nearly February.

I am 33.

2013 was an odd year. Whatever follows, I killed no pets, lost no organs, and suffered no major deaths in the family. For that I am thankful.

As is tradition with these posts, what follows is an incoherent collection of thoughts about the year past.

I remain engaged and could not be happier with M. We’ve talked about getting married this year without any real concrete plans. I should get on that. M’s brother got married last year; we did not want to distract from that, but there’s no real reason to hold off now. We’ve talked about getting a dog, but raising a dog in this apartment complex has complications associated with it.

2013 was a good year for fine dining. The most notable meals were at Komi and Per Se. There were numerous other fine gastronomic experiences including a magical meal with winemaker Serge Hochar and half a dozen remarkable experiences in Napa and Sonoma.

I think I nailed dinner and wine pairings for fourteen for New Year’s Eve with a brilliant cassoulet and Madiran. Palates were also delighted with an assortment of fine Champagnes. None of this matters, as I caused great offense and injury to a guest and longtime friend via some careless remarks. This overshadows the entire evening for me and haunts my subconscious. It’s the sort of cruelty for which no apology will ever suffice.

I drove a Ferrari for the first time. I’m glad I did. While I would love one, I’m also content that it’s more car than I can appreciate in routine driving. It’s also vastly more expensive than I can afford anytime soon.

I made no real progress on weight, exercise, health, or alcohol consumption. I think I’m off to a better start in 2014 on this front, but will only announce victory if I feel the same way a year from now. I’ve reached a point in life where recovering from my mistakes on this front is expensive and where avoiding doing so is expensive. I think I’ve been eating healthier in general, but I’ve discovered that’s but one small part of the struggle.

I attempted to write a C++ compiler from scratch, but failed. In a sense I never believed I could achieve this, so I’m not surprised. At the same time, it’s another source of great disappointment. There’s no reason I couldn’t continue to progress in this endeavor, but having flunked out of the program, I lack the motivation to continue it independently. There’s something intrinsic to this that I picked up in childhood that will haunt me through the remainder of my existence.

It was an odd year for vacations, as well. The trip to DC was perhaps the only genuine vacation. We had a nice time in California with some time tacked onto my ex-wife’s wedding. While I haven’t gotten around to writing anything about it (and probably won’t, at this rate), we had a time in Guatemala during M’s brother’s wedding there as well. There weren’t a lot of trips for us, however. This is probably something that should be fixed this year.

I replaced my entire wireless and wired network fabric in 2013, along with my core router, servers, mac workstation, and gaming box. My storage subsystems were substantially cycled as well with 80% of storage being new. It was an expensive year for technology, but things are in a pretty good place right now.

I’ve spent far less time programming than I’d hoped. I can only really criticize myself. I did a few interesting things, but they didn’t end up going very far.

This is sort of cheating, but I got a nephew a few hours into 2014 (to be fair, he was due in 2013). This turned out to be far more meaningful and important than I imagined, and has a lot to do with why I’m still here.

I started a new blog about beverages. I’m pretty happy with the concept, but need to keep the content flowing. I have dozens of ideas sketched out and just need to complete them. This is a unique thing for me. To this point I’ve done very little that felt broad and deep enough to justify a separate blog from this site.

The wine cellar is in a good place; I’m not longer in accumulation mode whatsoever. I’m drinking predominantly from the cellar and won’t reenter accumulation mode for another 2-3 years. One can read about the best wines I had in 2013, there was really only one that was remarkable. It’s not clear whether dragon chasing ruined the fun or that it was just an off year in this regard.

I’m at the same company and in the same role. I participated in somewhat more senior activities this past year; that was interesting. I’m hitting a bit of a plateau at the moment. What’s not clear to me is why that’s the case. I may be running into my limitations or I may be thirsty for something bigger and/or different. What’s more unfortunate for me is that I’ve lost the ability to distinguish between the two.

I read fewer books than I intended, but have started more books than I imagined. Completing them remains a struggle.

I started to clean out and dispose of some things I no longer need. Notably I got rid of a bunch of glassware, audio equipment, board games, and LEGO. I struggle in these areas; I have various monuments and relics of things I enjoyed in the past, but that have sat unused for more than a year. As an example, there’s no point to my board game collection when not a single of my games has hit the table in a year.

I got into vinyl, something I’d hoped to postpone for a few more years. While I’ve done little to chronicle this, I’ve since gone far beyond the initial steps taken to upgrade my analog audio system. I’m pretty sure everybody thinks I’m crazy now, but I meant what I said to D last year. My dreams are haunted by musical passages that I’ve listened to on my rig at work.

I have a beard, and I’ve let it grow out further than ever before. This does not make it impressive by any objective terms, but I’m strangely fond of it.

My interest in space and rockets was amplified. I spent numerous hours studying things like turbopump design, gravity turn curves, and staging strategies. There’s no point to this, but it remains a topic that fascinates me.

The trends of my sentiment are predictable and cliche. Things continue to lose meaning. Time with friends and experiences increasingly dominate the value equation. Mistakes with friends and missed experience increasingly dominate my regrets.