I've seen some stuff that would really make you say "like what?"

Wednesday, July 29

Geek

Nexus Qi

So my Nexus 5 disintegrated.  The material around the edge of the phone got scratched, probably from being stuffed into my pocket along with my headphones,* and then cracked and flaked off in bigger and bigger pieces, until finally the back started to detach and it couldn't find its SIM card any more and little bits of electronics started to fall out.

So I kind of needed a new phone.

I have a Sony Xperia Z Ultra, but that's too big; it lives in my notebook bag to serve as a mini tablet and 4G / Wifi hotspot.  So it was back to my Nexus 4, which is made of solid glass all the way through and so is still pretty much as-new.

The only problem is that...  Well, two problems.  Three.  One, it only has 16GB of storage, which is not enough.  Two, it's a superfluid, like liquid helium, and will not just slide off a level surface to fall on the floor, but will slide uphill to do so.**

And three, the USB port is a bit fiddly, which means at some point it will suffer the fate of my original Nexus 7 and I won't be able to charge it any more.***

If only it had shipped with wireless charging, so I could just plop it down on this wireless charging pad that is no longer in use by my Nexus 5 and HEY!

The Nexus 4 supported Qi wireless charging?  Did they, like, mention that to anyone?

* Sennheiser PX 100-II.

** Nexus 4 owners will know what I mean.  The glass back makes it the slipperiest phone in existence.  The edge is textured so you don't drop it, but when you put it down on any level surface it will swiftly migrate to the nearest available edge and make good its escape.

*** Until I went out and bought a wireless charging pad to see if that helped - and it did.

Posted by: Pixy Misa at 08:12 PM | No Comments | Add Comment | Trackbacks (Suck)
Post contains 329 words, total size 2 kb.

Geek

XPoint: A Better Flash Than Flash

No, not the Adobe one, but the one that powers your phones and tablets and increasingly, notebooks and desktops.

Intel and Micron have announced XPoint, a brand new memory technology based on magic smoke and fairy dust* that is up to 1000x faster and 1000x longer lasting than conventional flash memory.

Such announcements are not uncommon, but are of mostly technical interest, because it takes a good ten years to get such a technology off the ground - if, that is, it doesn't run into serious problems of technical or financial viability, which happens, roughly speaking, 100% of the time.

Turns out in this case that Intel and Micron have been working on this for ten years already, and they're fabbing viable 128Gbit devices right now.  Products are expected to ship by the end of the year.  This year.  2015.  AD.

The big difference between these devices and common NAND flash is that XPoint is bit addressable, like RAM, where with NAND flash you have to write a page (typically 4K) at a time and erase huge blocks (2M or more), which requires a lot of fiddling behind the scenes to work.  With XPoint you just write what you want, when you want, where you want.

Pricing is expected to be somewhere between NAND flash and DRAM - DRAM is about 20x the price of commodity flash.

Some use cases are obvious - solid-state caches for RAID controllers and enterprise-grade SSDs.  But if we finally have a large-scale non-volatile storage solution that runs at close to main memory speeds, that is going to set the cat amongst the pigeons in the database world.  It's the database holy grail, and the heart of every good database is software that tries to deliver that sort of performance without the requisite hardware unobtainium.

Now that unobtainium is due to be on store shelves for Christmas, the impossible is set to become commonplace.

* They haven't disclosed exactly how these devices work, so that's a bit of informed guesswork on my part.

Posted by: Pixy Misa at 09:14 AM | Comments (6) | Add Comment | Trackbacks (Suck)
Post contains 344 words, total size 3 kb.

Tuesday, July 28

Geek

Nexus 8

[Updated and bumped.]


It's the Nexus 8!  Or near enough.  Asus shook up the tablet market in 2012 with the original Nexus 7, a genuinely good budget tablet, and again in 2013 with the updated model, which was a great budget tablet (and which I still use for several hours each day).

Asus recently announced a slate of new tablets, but the crown jewel is the Zenpad S 8.0, which is exactly what I'd want to see in a Nexus 8 and aimed dead center at the iPad Mini on features and design, while keeping the pricing that made the Nexus 7 a runaway success.

 $199 for the base "C" model with a 1.3GHz quad-core 64-bit CPU, 2GB RAM and 32GB of storage (plus microSD), and a 2048x1536 8" IPS display.

It's the same size, weight, and screen as the iPad Mini, but $199 for the 32GB version vs. $349 for the iPad.  Plus microSD.  (Android's support for removable storage is basically poop, but iOS doesn't support it at all, so...)  

So if, like me, you prefer Android over iOS anyway, it's an easy choice.

The advanced "CA" model should arrive soon, and offers a 1.8GHz or 2.3GHz CPU, 2GB or 4GB RAM, and up to 64GB of storage (again, plus microSD), plus support for a pressure-sensitive stylus.  (I don't think the stylus is actually included.)  It's a little lighter than the base model, and includes faster WiFi and a USB-C connector like the new Macbook and Chromebook Pixel.

Update: Pricing for the top-of-the line 2.3GHz / 4GB RAM / 64GB storage model looks set at $299, with pre-orders now and product shipping in a couple of weeks.

All models include Android 5.something.  Either 5.0 or 5.1, depending on which site you believe.

The Android tablet market has been pretty dull the last couple of years, but these look like excellent performers and great value for money.

Posted by: Pixy Misa at 06:23 PM | Comments (5) | Add Comment | Trackbacks (Suck)
Post contains 316 words, total size 2 kb.

Sunday, July 05

Geek

Semantic UI

Semantic UI is Bootstrap done right.

Not that Bootstrap is awful; it's quite good and very useful.  It's just that Semantic UI actually makes sense.  And in the world of HTML, CSS, and Javascript, that's a rare thing.

Posted by: Pixy Misa at 12:12 AM | No Comments | Add Comment | Trackbacks (Suck)
Post contains 40 words, total size 1 kb.

Wednesday, June 17

Geek

Nano Nano

So AMD paper-launched their new video card lineup at E3 yesterday.  We already knew that most of the 300-series were just 200-series cards with new stencils and (in some cases) more memory.

The extra memory is welcome, though; with 2GB with 285 came up a bit short; with 4GB the 380 is a much better card, though it's the exact same chip.

The real excitement was around the new Fury cards - the top end cards now get a name and not just a number.  We knew that the Fury and Fury X were coming, because AMD announced their use of HBM (High Bandwidth Memory) months ago, but they still kept a surprise up their corporate sleeves.

HBM is a new answer to video cards' ever-growing demand for memory bandwidth.  If you look at Nvidia's current high-end cards, they use a 384-bit memory bus running at an effective 7GHz.  With HBM, AMD have flipped that around and only run at 1GHz - which demands far less power - but on a bus that's 4096 bits wide.

And they achieve that by attaching the memory not to a circuit board, but to a silicon interposer.  4096 traces on a circuit board would be hugely expensive - and just plain huge - but on silicon it's easy.  The interposer is far larger than a normal chip, but since it only carries wires and not transistors, it can be built easily on old, reliable equipment, and doesn't have the size restrictions of actual logic chips.

Anyway, AMD showed the water-cooled Fury X, which offers 50% more performance than their previous high-end card at the same power consumption - 8.6 TFLOPS vs. 5.6 TFLOPS - the air-cooled Fury, about 15% slower and 15% cheaper, the forthcoming Fury X2, which is two Fury Xs on a single card, and the R9 Nano, which came as a complete surprise.

Essentially, the Fury X is the fastest single-GPU card AMD can currently make; the Fury is the best price/performance they can achieve; the Fury X2 is the fastest card they can make that can actually fit in a normal computer.

The Nano is designed to deliver the best possible performance per watt.  The Fury X delivers 50% better performance per watt than the previous generation (using the same 28nm silicon process at TSMC), but the Nano is designed to run not at the optimum settings for performance, but at the optimum settings for power consumption, and the result is that it's faster than AMD's previous high-end card at about half the power.

And half the size.  By high-end video card standards, it's tiny, about 6" long.

AMD haven't yet release final specs and pricing for the Nano, but I'll be watching for it eagerly.  I don't need the absolute fastest video card I can get, but the card I have barely fits in the case, and makes upgrades incredibly awkward.  The Nano should be about twice as fast as the card I have, use less power, and take up half the room.  And give me more DisplayPort outputs so I can run a full 4K triple-monitor setup.

The real breakthroughs in performance will come in the next couple of years, as AMD and Nvidia combine HBM and HBM2 (twice as fast) with the next-generation 14nm silicon processes that are finally coming on line for them.  But AMD with its Fury range and Nvidia with their Maxwell linup (960, 970, 980, and Titan) have given us a tantalising taste of the near future.  Moore's law isn't dead quite yet.

Posted by: Pixy Misa at 09:12 PM | Comments (8) | Add Comment | Trackbacks (Suck)
Post contains 593 words, total size 4 kb.

Tuesday, June 16

Geek

Apparently Some Classic JRPG Fan Found A Magic Lamp...

They could have wished for world peace, a cure for cancer, and a really big pie.  But no...

At E3, Sony announced an actual release of the much delayed The Last Guardian, a PS4 remake of Final Fantasy VII, and (here much of the audience lost their minds), Shenmue III.

One commenter on Reddit described it as a fanfic version of an E3 event.

Posted by: Pixy Misa at 10:12 PM | Comments (27) | Add Comment | Trackbacks (Suck)
Post contains 73 words, total size 1 kb.

Wednesday, May 27

Geek

Unicode

Glitchr explains Unicode.

Ben Frederickson explains Unicode.

Ai Shinozaki explains Unicode.

/images/AiUnicodeWat.jpg?size=720x&q=95


Posted by: Pixy Misa at 09:47 AM | Comments (7) | Add Comment | Trackbacks (Suck)
Post contains 12 words, total size 1 kb.

Sunday, May 24

Geek

So I Was Wondering

Note to self: Implement auto-save, dammit.

I already knew that LMDB supported multiple values per key.  Reading the docs last week, I noticed that values within a key were stored in sorted order.  This evening, I was wondering if it were possible to seek to a particular value within a key.

It is.

This is neat.  It means you can use LMDB as an engine to implement a two-dimensional database like Cassandra, or a data structure server like Redis, with the elements of lists, sets, and hashes individually addressable.

Plus the advantage that unlike Redis, it can live on disk and have B-tree indexes rather than just a hash table.  (Though of course Redis has the advantage of predictable performance - living in memory and accessed directly, it's very consistent.)

The other big advantage of LMDB (for me, anyway) is that it natively supports multiple processes - not just multiple threads, but independent processes - handling transactions and locking automatically.  I love Python, but it has what is known as the Global Interpreter Lock - while you can have many threads, only one of them can be executing Python code at any time.  The other threads can be handling I/O, or calling C libraries that don't access shared data, but can't actually be running your code at the same time.

That puts a limit on the performance of any single Python application, and breaking out into multiple processes means you need to find a way to share data between those processes, which is a lot more fiddly than it is with threads.

LMDB don't care.  Thread, process, all the same, just works.

Neat.

It does have limitations - it's a single-writer/multiple-reader design, so it will only scale so far unless you implement some sort of sharding scheme on top of it.  But I've clocked it at 100,000 transactions per second, and a million bulk writes per second, so it's not bad at all.

Admittedly that was with the write safety settings disabled, so  server crash could have corrupted my database.  But my main use for LMDB is as a smart distributed data structure cache, so if one node dies it can just be flushed and restarted.  In practical use, as a robust database, the numbers are somewhat lower (though with a smart RAID controller you should still be able to do pretty well).

It also supports a rather nice hot backup facility, where the backup format is either a working LMDB database ready to go (without needing to restore) or a cdbmake format backup (which is plain text if you're using JSON for keys and values), and it can back up around 1GB per second - if you have the I/O bandwidth - and only about 20% slower if the database is in heavy use at the time.

/images/AiSailor.jpg?size=720x&q=95

Posted by: Pixy Misa at 01:08 AM | No Comments | Add Comment | Trackbacks (Suck)
Post contains 472 words, total size 3 kb.

Friday, May 22

Geek

A Few Of My Favourite Things

Once I got past the segfaults, anyway.  You should be using these things.

MongoDB 3.0 (not earlier versions, though)
Elasticsearch (though their approach to security is remarkably ass-backwards)
LZ4 (and its friend, LZ4_HC)
LMDB and its magical set_range_dup

/images/AiPurple.jpg?size=720x&q=95

Ai Shinozaki

Posted by: Pixy Misa at 05:10 PM | Comments (28) | Add Comment | Trackbacks (Suck)
Post contains 65 words, total size 2 kb.

Wednesday, May 13

Geek

Some Pig

So, I'm tinkering with what will become Minx 1.2, and testing various stuff, and I'm pretty happy with the performance.

Then I run the numbers, and realise that I'm flooding a 10GbE connection with HTTP requests using a $15 cloud server.

I think we can count that part of the problem space as solved.

/images/AiHeadband.jpg?size=720x&q=95

Posted by: Pixy Misa at 05:30 PM | Comments (5) | Add Comment | Trackbacks (Suck)
Post contains 56 words, total size 1 kb.

<< Page 1 of 122 >>
83kb generated in CPU 0.04, elapsed 0.0924 seconds.
56 queries taking 0.0576 seconds, 288 records returned.
Powered by Minx 1.1.6c-pink.