Nov 30
Servitude
posted by: Player0 in computering on 11 30th, 2008 | | No Comments »

I signed up for Amazon EC2 last week.  Dynamic hosting was pitched to me by a coworker and at first I was sort of against the idea.  I don’t like the thought of the data on my server to be ‘dynamic’.  It took me a lot of time and effort to set up the software and the data itself is pretty important to me.  But I did some research and Amazon services seemed relatively safe to try.

The impetus for this is the $151 per month I’m paying for my current dedicated server.  Since my career and hobbies revolve around web technologies it seems like a good investment for me to have a dedicated server somewhere.  I do make good use of it.

My budget is more in the $80 per month range though.  And LayeredTech raised their once affordable rates on me.

$151 per month can buy me a much better server somewhere else.  But it’s more difficult to find a server that will work as well for $75 or what have you.  Amazon EC2 can provide a server instance that can cost about $80 a month and has virtual specs that more than rival any other hosting company worth a salt.

Except I can’t make an instance work.  They don’t make it easy to set up.  I might just be doing something wrong but it won’t let me launch a Fedora 6 x64 instance.  It keeps saying I’m trying to run a Windows instance.  What, because I’m doing this from a Windows machine?  Setting up the SSH keys and other account credentials is fine but doing that from the Windows comand line and having to set up PATH variables is just frustrating.

Is it seriously too much to ask to have some sort of web interface to launching an instance?  Surely passing a CERT over SSL for auth is just as secure as doing it from the CLI?

*sigh* For all I know there *is* one and I just haven’t seen it.  Maybe I should contact them and ask more about it.  I’m really not looking forward to having to set up a server again.  It takes up so much time especially when you have to figure out how to do it securely.

Nov 30
The Nature Of Change
posted by: Player0 in computering on 11 30th, 2008 | | No Comments »

Things in my life today are radically different than they were five years ago.  And those five years have truly vanished in a blink of the eye.  My life has never changed more to be honest.

At one point I put a lot of effort in to burning DVDs of TV shows.  I have binders among binders of DVDs.  I still have several unopened spindles of DVDs here that I purchased to continue the effort.  I had no fewer than three TV tuner cards at once.  And in cleaning my room today I had to ask myself whether or not I should keep these DVDs.  The record quality is poor.  There are commercials.  And I’ve never once used or looked at these DVDs since wasting HOURS burning them.

Up until a few months ago I had a PC sitting in the living room with the soul purpose to enable to watch these DVDs.  SageTV made MPEG-2 streaming more of a reality so I wound up doing that most of the time.

Today though not so much.  It’s easier to go online and grab a pristine digital copy of any particular show I want, store it on my big 3TB drive array, and use TVersity to stream it to my PS3.  I even get a bluetooth remote control that works extremely well downstairs.  The DVR records any TV shows I might not want to miss and I don’t need to configure USB UART interfaces and a spare digital cable tuner in order to record something from DIY or HBO.  Also the cable companies seem to offer plenty of free movie choices.

The biggest hurdle I have now is finding the time to watch all 200+ episodes of Bleach or Naruto or anything.  Who can tolerate 40G worth of MacGuyver reruns?

Of course this brings up a very good point: embedded devices are blowing the PC away when it comes to “on-demand” home video.  This is a shame because these devices are often very limited to what they can and can’t do.  Most of these devices have restrictions on what formats you can play or how easy it is to play certain types of content on them.

The pipe dream here is to be able to use any computer in the house or use the playback device, download videos from whatever source to a shared network drive with infinite capacity, and stream it seamlessly to any computer or TV in the house.  And to do this with high quality audio and video with added features you’d expect from a DVD such as subtitles, chapters, audio streams, etc.  Oh, and they key here is that this ability should be very affordable and use technologies already in the home.

I don’t know if it will happen or not.  We’ll see where it goes in five years.  It’s possible that DRM and related technologies will get shoved in our faces more and that will cripple this effort.  You’d think that this’d be pretty easy to do with any modern home PC.  It’s just a matter of software.  Windows Media Server seems to be the only well fledged solution on that front but it’s mind numbingly shallow in terms of formats it supports.

The brings to mind the whole Instant Messanger problem.  IM was great when I first started using it in 1997.  ICQ was free and reckless.  With the pile of bloatware that is modern AIM, ICQ, MSN, or Yahoo can anyone truly say that in the past ten years that IM has improved?  Where is integrated SSL or PGP?  What ever happened to file transfers just working especially for images?  Why can’t Skype have a push to talk button?  Where’s a decent client for Jabber?  Why can’t more clients be universal like Trillian? Why on Earth is IRC still alive?  I might like Yahoo’s feature set if it wasn’t loaded with toolbars and ads and crap I don’t need.

Not everything improves with age in technology.  IM hasn’t.  Email hasn’t.  Windows hasn’t.  Music hasn’t (iPod excepted).  Video has a little but very slowly.  DVI, HDMI, Net Neutrality, YouTube good.  HDCP, MPAA bad.

Nov 27
Peltier Tips
posted by: Player0 in tips on 11 27th, 2008 | | No Comments »

You should purchase your own peltiers and have a play.  They really are some of the most interesting devices you can purchase today.  Many resellers still sell peltier enabled CPU or GPU coolers that you can bolt directly on to your existing system.  Don’t expect sub-zero results and make sure you have adequate cooling to deal with the extra 200 watts of heat a peltier will add to your system.

It’s always important to determine which side of the peltier is hot and which side is cold.  You can connect a peltier briefly to a power supply and while squeezing it between your fingers tell which side is hot or cold.  If you leave it plugged in for too long both sides will become hot.  Whichever side is cooler is the cold side.  Reversing the leads will change which side is cold or hot.

Always go with potted peltiers.  They have added protection from internal condensation which can occur when generating sub-ambient temperatures.

Peltier leads are annoyingly fragile.  In many cases they are designed to disengage if the peltier becomes too hot.  Most commonly the simple action of bending the wires around will snap them off.  It’s extremely difficult to rewire them.  And peltiers are expensive.

Peltiers work best when sandwhiched tightly between two water blocks.  They are quite fragile though.  Uneven pressure or too much pressure will crack them.  A cracked peltier may even still work somewhat but never to full capacity.  Sometimes they can be damaged with no visible signs of harm.  As far as I know you can test the current draw of a peltier to make sure it is still working correctly.  For example, a 172w peltier at 24v should draw about 11amps of current.

Whatever you cool with a peltier should have some sort of condensation proofing.  This depends on the day and your climate.  A CPU will need to be covered in silicone gel or dielectric grease to prevent moisture from damaging it.  Neoprene foam is also a common insulator.

Always overestimate your peltiers.  Get the largest one you can for the best results.  Don’t rely on the peltier’s temperature delta or input wattage rating to tell you how it will perform in your application.

Peltiers come in many shapes and sizes so make sure you measure accurately.  Thickness may also vary.

Use a thermal interface material when mating a peltier to a cooling block.  CPU grease works great on the hotside.  Many thermal greases don’t perform well at lower temperatures however so use very thin coats or try to find a grease designed for low temperature applications.

If a peltier is overloaded or is not cooled properly it will simply act as a heater.  This can be quite devestating to electrical components.  I’ve had peltiers boil water when a cooling pump fails.

Peltier voltages are usually designated as the optimal for efficiency.  Providing a peltier with more voltage can improve the amount of heat pumped but with reduced efficieny.  If you can cool a peltier enough you can definitely give them a couple extra volts for more cooling power.  Anything more than 10-15% can certainly reduce a peltiers life or cause immediate damage.

Peltiers can certainly be air cooled however this will require a very large surface area and sufficient (loud) airflow.  Cooling air with a peltier is even harder.

Stacking peltiers is a great way to increase power.  You usually want a copper heat spreader in between stacked peltiers.  A dual loop cooling system as I’ve described in my last post is an example of peltier stacking.  Instead of directly mounting the peltiers to each other, a ‘cold’ water loop was used to bridge the peltiers.  This sacrifices efficiency for ease of assembly.

Nov 27
The Power To Chill
posted by: Player0 in computering, projects on 11 27th, 2008 | | No Comments »

For more pictures of this project you can visit my galleries.

Chiller Assembled

Several years ago, I was fascinated with peltier elements.  I won’t bore you with an encyclopedic definition but in general terms they’re basically little heat pumps.  You plug them in and one side gets super cold while the other gets super hot.  If you reverse the voltage, you change which side gets cold.  They can be as small as a fingernail or as large as well… only the government researchers know that really.  The bottom line is that you have the power of a fridge in a very small package and with no moving parts.

Computer overclockers have found these very useful in making their PCs run faster.  For me it started with buying one 156w unit, than a 172w, than a 226w, than two of those, and so on and so forth.  I kept increasing my cooling capacity and in turn my computer went fast and faster.  But it was never enough.

And more is better right?

In 2003 I reached the final iteration of my peltier cooling monstrousity.  An 1100w dual water loop cooled behemoth I called “The Cube”.  It consisted of a 226w peltier cooling the CPU directly, a 172w peltier cooling the GPU, and four 172w peltiers chilling the water.  It was big, loud, and required a 20amp 110v circuit to run.

Water Chiller Disassembled

The heat output of this computers CPU and GPU was about 170 watts when overclocked.  More than enough to make the inside of any case in to an Easy Bake oven.  With decent air cooling the CPU may have been stable at around 60c degrees.  With typical water cooling about 45c degrees.  When using a big 226w peltier directly mounted you could expect 30c degrees.  If you want to chill a CPU down below 0 celcius you need The Cube.

I don’t actually know what the final cooling power of this project was but according to the CPUs onboard diodes it was well below 0.  Unfortunately that prevented me from knowing the true temperature.  Also the thermal diode on a CPU may very well be highly inaccurate in that temperature range.

As I mentioned, this system had a 226w peltier mounted on the CPU.  The CPU was operating at about 110w overclocked.  The 226w peltier actually required 300w of power to run.  This also meant that the hot side of the peltier was operating at with over 400w of heat energy.  You can cool the hot side of the peltier with water cooling just like how a car’s engine works.  The coolest you can hope water to be without major evaporation is room temperature.  This is a downside to peltier cooling since how cold the cold side gets is directly proportionaly to how hot the hotside gets.  These peltiers when dealing with CPUs are only reasonably capable of cooling the cold side about 20c colder than the hotside.  If your water temperature is 40c, your peltier hotside is about 50c, and your CPU is going to be about 30c.

The bottom line here is that you want to make your water cold too.  I had to build a water chiller capable of bringing the water temperatures down to under 10 degrees celsius.   After actually doing some thermodynamic math with my target temperatures I discovered that I would need A LOT of power to do this.  Four 172v peltiers later and the chiller was reborn.

And it worked.  The water was able to stay under 10c degrees while extracting the heat from my CPU, GPU, and their respective direct mount peltier units.  Something has to cool the chiller itself which alone generated 1,060 watts of heat energy.  That’s a decent microwave oven worth.  This is where the dual-loop comes in: a completely separate water cooling system designed to only cool the chiller.  This would be known as the ‘hot’ loop where radiators were used to distribute the massive heat load to the air.  The ‘cold’ loop used the chilled water to cool the direct mount peltiers.

Hot and Cold Loop Pumps

Unfortunately this system proved to be highly inefficient.  The amount of heat that was dumped in to the hot loop from the CPU, GPU, and six peltier elements was a stagering 1800 watts.  The entire system itself plus computer parts drew over 2200 watts from the wall sockets once you factor in power supply inefficiency.  That’s the upper limit of a US 20amp breaker.  Forget the expense of electricity, that’s pretty much a guaranteed fire hazard!

I suppose that all of that 2200w ended up as heat energy in my 12×10 bedroom.  I needed to run my 900 BTU air conditioner just to stand being in the same room in the thing and I left my windows open in winter just to keep myself cool.

The overclocking difference that you get at -10c degrees isn’t much greater than what you get at 30c degrees.  The extreme expense of a project like this doesn’t justify the performance gains especially with Moore’s law making all of our gear obsolete in months anyway.  Phase change cooling is more powerful than peltier cooling, produces less heat, and is much less expensive to run.  Even it’s benefits to real world PC performance are really hard to measure.  And it has been with this philosophy that I have proceeded for the 5 years since this project.  I now build quiet and basic water cooling systems that maximize performance at the minimum of cost.  If you’re going to bother for the most performance possible just dunk your CPU in liquid nitrogen.  Why half-ass it with anything else?

Nov 17
Radiation Therapy
posted by: Player0 in gaming on 11 17th, 2008 | | No Comments »

I’m still fighting my way through Fallout 3.  I’m plodding through the main story line with minimal interest.  The story is meh.  I find it more interesting to explode the area and fight gansters.  I’m happy to finally have power armor but it’s made the game MUCH too easy.  I wiped out the citadel with a mingun with only a moderate application of stimpaks.  This game suffers in the same way Oblivion did: it levels up much to fast.  There doesn’t seem to be a limit on how many heals you can use per fight.  This is different from Oblivion.  Also, they don’t count towards weight.  This means that if you use stimpaks you’ll never die even in the hardest fights with the hardest or most numerous enemies.  This is slightly more frustrating than your typical enemies hear through walls and floors crud.

A lot of stuff is stuck in there that just doesn’t make sense.  Rads are never an issue.  Why have them?  You never need to eat food so why have it?  I try to not use stimpaks to try and make things more difficult.  By waiting to use a bed or my home base to heal it’s a little more challenging.  The more I play this game, the more I realize that the game engine itself is just poorly balanced.  The perks idea is quite good but there doesn’t seem to be forced specialization.  Even at level 15 most of the critical stats in the game are leveled up.  You can nearly get 10s in every base stat I guess.

I’ve always wanted to get a gieger counter.  I’d probably never get to hear it click except for in self test mode.

I kind of want this game to be over with.  I’m kinda getting tired of playing it.  It’s taking up so much time.  Which is a good thing.  I just have many other things I want to do right now too.

Nov 16
Status Update
posted by: Player0 in computering, gaming on 11 16th, 2008 | | No Comments »

Going from the Netgear PCMCIA 802.11N adapter to the DLink USB 802.11N adapter solved all my dropping issues.  I think the real issue might have been the Dell 600m doing something weird the the PCMCIA power during periods of slight inactivity.  I’m happier now though.

Fallout 3 continues to be awesome.

Wrath of the Lich King is interesting.  I haven’t seen any of the new level content.  But the 3.x patch changes a lot of little things in nice ways.  The Druid Feral spec gets some neat little improvements.  It’s interesting to have to learn some things over again.

Nov 7
Monkey Hate PHP
posted by: Player0 in php on 11 7th, 2008 | | No Comments »

Ugh, I’m really starting to lament my choice to be a PHP developer.  Sure, it *is* better than Perl and who knows if I should learn Python, Ruby or Java.  I found a little nugget of joy today when using PDO and ip2long().  If you simply do a $sth->bindParam(’:iplong’, $iplong); the query my receive something like -42452 which won’t work.  This issue is complicated by the fact that, as far as I can tell, PDO provides absolutely no method for viewing any query with the parameters replaced before or after you exec() it.  Also take note that without a 3rd parameter, bindParam is supposed to work in PARAM_STR mode.

But, due to the mysteries of type conversion and PHP’s utter inability to deal correctly with any number much larger than 2 billion, you must do:

$sth->bindParam(’:iplong’, sprintf(’%u’, $iplong), PDO::PARAM_STR));

More issues arise in PHP land when you try to take advantage of the fact that MySQL developers aren’t necessarily inbred.  Take, for example, a BIGINT(20) column type.  There’s no real reason why this 64bit integer isn’t a commonly used data type.  If you have a table with auto_increment IDs and you delete from it regularly than BIGINT is a must.  Or suppose you want 64 enable/disable bits for some reason.  Well you can treat them as strings in PHP as long as you don’t EVER try to use them in something which is going to assume they’re numeric.  And forget adding, subtracting, bitshifting, etc without BCMath or some equivilent extension you’ll be lucky if is ever compiled in to your PHP install.

This is ignoring the glaring problem of platform specific architecture and PHP’s retardation in abstracting that.  Your (int)s on x64 might be 64 bit or they might not be.  Nothing is guaranteed.

I heard that PHP6 fixes a lot of UTF8 stuff.  I suppose it’s too much to ask for it to add a 64bit integer type.

Nov 7
I can’t really see myself buying this…
posted by: Player0 in gaming on 11 7th, 2008 | | No Comments »

Been playing Mirror’s Edge demo on the PS3.  This is because I still can’t get my Xbox360 to connect to my wireless network with WPA2.  They’re supposedly doing this major front end overhaul to the 360 but I haven’t heard if it will enable WPA2 support.  If they spend all that time bothering to overhaul things, but they can’t enable something as manditory as that well, then there is no hope.

But yeah, Mirror’s Edge.  What a wonderful new kind of game.  It sort of makes me think it’s some sort of love child between Prince of Persia and Portal.  The controls are pretty easy to master and the perspective movement can definitely induce some vomiting.  But against all odds I sort of like it.  I’m not sure I like it enough to pay for it.

I’m annoyed by the lack of a LittleBigPlanet demo on the PS3.  I might have bought that one if I could give it a shot first.  Xplay sure busts a chubby about it.  I did finally purchase Fallout 3 tonight over Steam.  It’s still cooking but I should get some weekend play out of it.  I’m sort of still itching to play Oblivion.  Hell.  I’d still like more GTA4.

I will most likely invest in some more WoW though.  Lich King will be out next week so I’ll definitely be playing WoW.  No harm in starting early since I’ll likely be bored otherwise this week.

Nov 5
On Hold, Your Mom.
posted by: Player0 in reviews on 11 5th, 2008 | | No Comments »

I’ve always kind of liked Paypal and Ebay.  I’ve been an Ebay member since 1999 and a Paypal member since 2000.  I’m certainly not a heavy user but it’s nice to go buy an old game here or go sell some stuff there.  And let me make one thing clear: I’ve never defrauded anyone.

But I have been defrauded.  And I still think that Paypal owes me some money back.

This isn’t what inspires my post here.  Oh no.  It’s Paypal’s new “Buyer Protection” scheme.  Essentially, if I sell something to you and you pay me with Paypal, I don’t get to see a dime for 21 days, and you won’t know about it until I tell you.

In the case that I’m paying $50 to ship a big server, not having that money to pay for shipping or materials really sucks.  I’ll be waiting two more weeks to be reimbursed by Paypal.

You see, as a user of both services for 9 years with no negative feedback and 62 positive Ebay reviews, and whatever (78) means on Paypal, I am a very high risk.

And since my transactions are deemed as a high risk, I don’t get the money before I ship an item.  Try walking in to a store and doing that.

They have to be out of their fucking minds.

You have to do 20 transactions per 6 months with 100% satisfaction to be considered safe.  Ignoring the fact that Paypal and Ebay passwords are hacked ALL THE TIME because of Ebay’s lack of modern, or competent, online security measures, that means I need to be spending or selling about $133/month on Ebay if the average transaction is about $40 total.

Not your typical user.  So really Ebay is only catering to shitty Ebusinesses now.

I suppose you could simply do 20 $1-2 transactions well and then use your ‘highly-secure’ account to rip someone off selling a car or a picture of a PS3.  Yeah, that’s right Ebay, you’ve told every scammer in the book exactly what he needs to do in order to screw other people over.

Most likely they’ll simply continue to use their trojan horses to collect Paypal passwords and empty peoples bank accounts.  And I don’t mean WoW.

What does it take to loose my business?  I mean I’ve been screwed over so many times by these people and they just seem to be doing worse and worse.  I mean, I can’t even get the Paypal ATM card any more because they’re system won’t validate my address.  Except, it’s the same fucking credit card and valid address I use with Paypal ALREADY!!  If it works to make purchases why can’t they just give me the debit card?  Contacting them was futile, as usual.

If I was smart, I’d disconnect all my financial services from Paypal.  Maybe I can screw someone over and make back some of that money I lost.  Circle of life.

Nov 3
No Fallout 3 Yet
posted by: Player0 in php, projects on 11 3rd, 2008 | | No Comments »

I’m sitting here annoyed by several things.  First of all, several of the keys on my keyboard, especially backspace, have developed a case of the stickies.  Someone spilled something on this thing and it wasn’t me.  A more important annoyance is the fact that I have still not played Fallout 3, or any of the other Fallout games.  I’m quite interested to see what Bethesda hath wrought.  But alas, I am poor, for I purchased a new PC for my wife for her birthday.  Really, I just wanted her to be able to play WAR and WOW with me.  I suspect she is somehow involved in this sticky keyboard fiasco…

I have a bunch of older computer parts hanging around especially since I gutted my wife’s PC.  I decided to buuld myself a dev box which I could bring to work.  It would be nice to offload some of my work PC’s duties to a separate machine.  Primarily the hosting of dev environments.  Also since I prefer to have my work PC running Windows for various reasons, having a second box provides me with an avenue to use linux when I need.  Especially for those dev environments.

The Windows command prompt sucks absolute balls.  Yeah, there are some replacements out there.  Cygwin is barely okay as well.  Running linux is nicer.  Especially when it’s not a virtual machine eating up every available ounce of CPU, memory and disk access.

The wife’s machine donated an Opteron 146 and some Nvidia S754 motherboard.  I had a couple SCSI3 discs and a controller laying around.  A PSU here, a DVD-ROM drive there, and a stick of the world’s cheapest DDR 1G RAM and I have a pretty powerful dev box.

Linux tends to disagree with it.  First up was CentOS 5.  This actually installs and does the software RAID 1 like I would like.  But for whatever silly reason it hates the ATI 9200SE video card I’m stuck with and my MS mouse doesn’t work with it.  So I tried Ubuntu.  The mouse works but the screen goes all flickery and it’s just not installable.  So I give Gentoo it’s shot.  First time I ever tried it.  Ugh.  It’s for maniacs.  Who has this kind of spare time??  Really, I mean, I’m sure it’s awesome once you get it going but I think that the effort is just too much.  I really don’t want to do software RAID1 partitioning manually, I’m sorry.

With my options dwindling I’m left downloading Fedora Core 9.  With any luck it’s modern enough to work with all my crap out of the box so I just don’t have to fight with anything.  We’ll see in a few minutes.  I had the DVD but it won’t boot in this old drive of mine (Creative 8X DVD that’s over 9 years old now and came with a hardware MPEG2 accelerator).

At work I’m now officially an architect.  I’m not sure what that changes necessarily but it means I have to learn entirely new software deployments.  In many ways it’s like working for a completely different company.  I’m also learning Symfony.  I’m trying *real* hard not to be skeptical about it but there are things already I do not like about it.  Perhaps this is an implimentation thing but Syfony loves loading entire MySQL record sets (and corresponding objects) in to memory.  It doesn’t seem well optimized.  But I know so little about it that I can’t really speak beyond it’s seemingly high memory usage.  In many ways, I am not a believer in PHP frameworks.  PHP itself is a language designed to be used for rapid prototyping.  By forcing developers to learn and fight with something beyond PHP aren’t you slowing them down?  It certainly hasn’t done me any favors as I jump on to this project as a total noob.  However, I agree that there are many common tasks that need to be built over and over in PHP these days.  Shared sessions, i18n, db abstraction, cms. db/object reflection, release management, scheduling/queuing, etc.  If you think about it, the problem probably lays with PHP itself.  If PHP is a rapid prototyping language than it should have more built in.  It should be more API like.  If PHP is supposed to be a lower level language than it needs to be less bloaty, but perhaps better structured.

PHP is just a seriously confused language I think.