Author Archives: Felix

PogoPlug Review

After being alerted to a discounted price by r/Linux, I bought a PogoPlug, via Adorama, here (oddly, as of recently before the date of publication, using the affiliate link (which I’ve reproduced above, though I am not the affiliate), the device was listed at $15, whereas it is listed as $20 without it).

When it arrived I promptly installed Debian on it, via these instructions, so I have no idea how the stock firmware works (though it’s still there, since the install is non-destructive).

The results are in:

Test  Path                                Rightwards    Leftwards
                                          (Write MB/s)  (Read MB/s)
----  ----                                ------------  -----------
   1                 Odin <--> Mem                 -        19000
   2                 Loki <--> Mem                 -         9400
   3                 Thor <--> Mem                 -         2300
   4                 Pogo <--> Mem                 -         1200
   5                 Odin <--> SSD                 -          350.0
   6                 Loki <--> SSD                 -          246.0
   7                 Thor <--> HDD RAID 0          -          150.0
   8                 Thor <--> HDD RAID 50         -          150.0
   9                 Loki <--> USB HDD            35.5         30.9
  10                 Pogo <--> USB HDD             8.7         30.6
  11                 Pogo <--> USB Flash Drive     1.7         20.8
  12  Odin <--TCP--> Loki                        111.0        111.0
  13  Odin <--TCP--> Thor                        111.0        112.0
  14  Odin <--TCP--> Pogo                         77.9         80.5
  15  Odin <--TCP--> Loki (duplex)               110.0    &   110.0
  16  Odin <--TCP--> Pogo (duplex)                31.9    &    18.6
  17  Odin <--SSH--> Loki                         63.3         64.4
  18  Odin <--SSH--> Thor                         34.8         34.9
  19  Odin <--SSH--> Pogo                          6.4          6.5
  20  Odin <--SMB--> Pogo                         14.1         42.4
  21  Odin <--TCP--> Pogo <--> USB HDD             6.4         21.6
  22  Odin <--SSH--> Pogo <--> USB HDD             3.5          5.4
  23  Odin <--SMB--> Pogo <--> USB HDD             5.4         25.3
  24                 Pogo <--> USB HDD x1          8.5 x1      29.6 x1
  25                 Pogo <--> USB HDD x2          4.0 x2      12.2 x2
  26                 Pogo <--> USB HDD x4          2.0 x4       4.4 x4
  27                 Pogo <--> USB HDD x8          1.0 x8       1.6 x8
  28  Odin <--SSH--> Pogo <--> USB HDD x1          3.6 x1       3.8 x1
  29  Odin <--SSH--> Pogo <--> USB HDD x2          1.7 x2       2.6 x2
  30  Odin <--SSH--> Pogo <--> USB HDD x4          0.7 x4       1.4 x4
  31  Odin <--SSH--> Pogo <--> USB HDD x8          0.4 x8       0.6 x8
  32  Odin <--SMB--> Pogo <--> USB HDD x1          6.0 x1      25.6 x1
  33  Odin <--SMB--> Pogo <--> USB HDD x2          2.6 x2      11.2 x2
  34  Odin <--SMB--> Pogo <--> USB HDD x4          1.5 x4       5.2 x4
  35  Odin <--SMB--> Pogo <--> USB HDD x8          0.8 x8       1.9 x8
  36  Odin <--gzip-> Pogo                          -           17.6
  37  Odin <--SSH--> Loki <--SSH--> Odin <--SSH--> Thor <--SSH--> Odin \
                                                   9.1   [See Note]


Write performance on the USB devices are oddly terrible. Googling indicates that modern versions of ntfs-3g support a big_writes option that supposedly speeds up writes back to parity with reads, but the kernel (2.6.32!) and ntfs-3g I have on my PogoPlug don’t support it. Seems like you need Arch Linux. Given that that’s the case currently, it seems reasonable to plan to populate your storage elsewhere. Otherwise, it seems really pretty capable. A Blu-Ray quality movie is roughly 2MB/s, which, if you’re streaming over SMB/CIFS/Samba, would let you watch three at a time. Certainly, it can handle streaming music to as many devices as you like (FLAC being a paltry ~100kB/s).

All in all, pretty good for a $15 device! I strongly endorse them as entry-level home fileservers. I’ll probably buy another one at some point.

Commands Used:

 1- 4: N/A: `dd if=/dev/zero of=/dev/null bs=4M count=4096`
 5- 8: N/A: `pv /dev/sdN >/dev/null`
 9-11:  W : `pv /dev/zero > test`
        R : `pv test > /dev/null`
12-16:  W : `pv /dev/zero | nc HOST 3456` && `nc -l 3456 >/dev/null`
        R : `nc -l 3456 | pv >/dev/null` && `nc HOST 3456 </dev/zero`
17-19:  W : `pv /dev/zero | ssh HOST "cat >/dev/null"`
        R : `ssh HOST "cat /dev/zero" | pv >/dev/null`
 20  :  W : `dd if=/dev/zero of=/mnt/samba/pogoshare/dev/shm/test bs=1M count=128`
        R : `dd of=/dev/null if=/mnt/samba/pogoshare/dev/shm/test bs=1M count=128`
 21  :  W : `pv /dev/zero | nc pogo 3456` && `nc -l -p 3456 > test`
        R : `nc -l -p 3456 | pv >/dev/null` && `nc odin 3456 < test`
 22  :  W : `pv /dev/zero | ssh pogo "cat > test"`
        R : `ssh pogo "cat test" | pv >/dev/null`
 23  :  W : `pv /dev/zero > /mnt/samba/pogoshare/mnt/extdrive/test`
        R : `pv /mnt/samba/pogoshare/mnt/extdrive/test > /dev/null`
24-27:  W : `for i in {1..N}; do $(dd if=/dev/zero bs=4M count=16 | pv -c > $i) & done; wait`
        R : `for i in {1..N}; do $(pv -c $i > /dev/null) & done; wait`
28-31:  W : `for i in {1..N}; do $(dd if=/dev/zero bs=4M count=16 | ssh pogo "cat - > /mnt/extdrive/$i") & done; wait`
        R : `for i in {1..N}; do $(ssh pogo "dd if=/mnt/extdrive/$i
bs=4M" >/dev/null) & done; wait`
32-35:  W : `for i in {1..N}; do $(dd if=/dev/zero bs=4M count=16 | pv -c > $i) & done; wait`
        R : `for i in {1..N}; do $(pv -c $i > /dev/null) & done; wait`
 37  : N/A: `cat /tmp/randbytes | pv -c | gzip | pv -c | nc pogo 3456` && `mc -l -p 3456 | gunzip >/dev/null`

Testing Notes:

For various tests, sync; echo 3 > /proc/sys/vm/drop_caches was required between tests to not pull just pull from the cache.

1-8: I only have read speeds for these because I didn’t want to overwrite my drive.

5: Intel 520 Series SSD.

6: Intel 320 Series SSD.

33: This started crashing fuse or something, so I gave up. I would’ve investigated, but I was listening to music over sshfs, and I didn’t like how it kept killing my music.

Naming this Darn Thing

In pushing out a cleaner blog theme, I admitted to myself that ‘Blawg’ wasn’t really an acceptable title. So I quickly wracked my brain for a title, and observing myself reject everything that came to mind really reinforced the notion that I am completely infected with the virus of irony (see this Times article:

I can’t even imagine what a serious title would be like.

So that’s how I decided to go from ‘Blawg’ to ‘Blog’.

P.S. You may at least take away from this otherwise totally valueless post that I am at least thinking about posting “actual content”.

P.P.S. I have actual drafts, I promise.

Day #2, Post #2

Well, I’m still figuring this whole thing out, but I didn’t want to get off to a bad start by missing the first day post-inauguration (blah, blah, habit-forming, etc., etc.). Therefore, I am recording today’s accomplishment as helping my father replace our broken dishwasher with a new one. Hopefully, it will provide many years of good service.

Ok, I’m going to bed.

Post #1

For a while now I have had an informal personal goal, which is, every day, to accomplish one thing that has a lasting positive impact on my life.

The over-arching concept of that goal is that I want to do more than just get through each day. I want to come out of as many days as possible better equipped and more skilled and more knowledgeable than I was coming in. Stated more alarmingly, stasis terrifies me: I don’t want to spend my life treading water, as it were. So I am hereby resolving to push forward, at least a little, every day.

And hey, if each improvement made me a better person (including making me better at improving), then the optimal result would be some sort of exponential curve trending towards becoming an ubermensch (very much à la the transhumanistic notion that “to be more than human is to be human”). While my expectations are nothing of that sort, with an upper bound like that, how could I refuse to try?

Today’s accomplishment is setting up this blog (using the definition of an event occurring “today” as “having been continuously awake from the event to now” rather than “having occurred on the same calendar date”). I am counting this, notwithstanding the two(?) other times I’ve set up a personal blog, because this time will be different, I promise.

The obvious thing, going forward, is to record each day’s accomplishment here. This is an appealing idea because it would then allow me to actually quantify and analyze the degree to which I am successfully living up to my one-a-day goal. This is also an unappealing hypothetical practice both because in general I dislike the notion of journals/diaries and for possible privacy concerns (not of the revealing-sensitive-information sort, but of the no less valid how-much-of-your-life-do-you-really-want-to-be-public-knowledge? sort). Also, I am hesitant because it seems to me that the act of publishing information carries an implicit assertion that the information is worth publishing. It is by no means obvious to me that this is the case here.

At any rate, I haven’t yet made up my mind whether I will attempt to record my accomplishments, so, at this point, only time will tell. Either way, here’s to adding one to the count of personal blogs on the internet. *champagne and streamers*

I’m open to taking bets on whether this is my last post.