Berkeley CSUA MOTD:Entry 39193
Berkeley CSUA MOTD
 
WIKI | FAQ | Tech FAQ
http://csua.com/feed/
2025/05/25 [General] UID:1000 Activity:popular
5/25    

2005/8/19-22 [Computer/SW/OS/Linux] UID:39193 Activity:nil
8/19    Okay, when are we *really* going to have to worry about storage of
        yottabytes?
        http://www.thedailywtf.com/forums/41025/ShowPost.aspx
Cache (8192 bytes)
www.thedailywtf.com/forums/41025/ShowPost.aspx
YUM (which, from what I can tell, has something to do w ith Linux, hot dogs, and a magical kitchen appliance called a "recipe ma ker") and sent in a little snippet from it. symbols = '', # (none) 'k', # kilo 'M', # mega 'G', # giga 'T', # tera 'P', # peta 'E', # exa 'Z', # zetta 'Y' # yotta # ... thresh = 999 depth = 0 while number > thresh: depth = depth + 1 number = number / 1024 # just in case someone needs more than 1000 yottabytes! diff = depth - len(symbols) + 1 if diff > 0: depth = depth - diff number = number * thresh**depth Yes, that's right, "just in case someone needs more than 1000 yottabytes! " Those of us lucky enough to have a terabyte are 1,000,000,000,000 time s short of a yottabyte. Dual Layer DVDs, we'd need to build a stack high enough to reach the moon ... A stack of 35" floppy di scs with 1,000 yottabytes would be tall enough to make it to the sun. It i s an RPM based package management system for Linux, it comes as standard with Fedora Core. Basically if I want to install FireFox I don't go lookign round the web f or it I just run: yum install firefox Or, better still, if I want to update ALL the apps on my computer to the latest version I just run: yum update Yum is a very nice product, mind you this little snippet of code is excep tionally entertaining, I know it is good to future proof your code but I think yum will be LONG dead before we start needed yotta bytes of info from it! Well, I must say: this developer is optimistic when it comes to data sizes! While what was written in isolation isn't a WTF but rat her an optimistic hope (or fear) for dataset size does bring up the like ly WTF in regards to other issues within the application. Somewhere or other, I'd expect file data stamps to be assigned, le ading to the logical question: is the software Y20M compliant, and beyon d? And of course, I had to pop out this question a woman might ask a guy: Is that a yottabyte of storage in your pocket, or are you just happy to s ee me? Anonymous wrote: Somewhere or other, I'd expect file data stamps to be assigned, leading t o the logical question: is the software Y20M compliant, and beyond? it would be interesting to see a real world app which does. Alex Papadimoulis wrote: A stack of 35" floppy discs with 1,000 yottabytes would be tall enough t o make it to the sun. Dude, wouldn't the floppies melt when they get close to the Sun? It's a funny comment but the check itself is probably a good thing. If 'number' came from direct user input, a file, or some other untrusted source it needs to be checked rather than blindly running off the end of the symbol array. Alex Papadimoulis wrote: A stack of 35" floppy discs with 1,000 yottabytes would be tall enough t o make it to the sun. Dude, wouldn't the floppies melt when they get close to the Sun? voyager wrote: Yum is a very nice product, mind you this little snippet of code is excep tionally entertaining, I know it is good to future proof your code but I think yum will be LONG dead before we start needed yotta bytes of info from it! They divide by 1024 to get the number of (mega|g iga|whatever)bytes, but if there are more than 1000 yottabytes they mult iply by 999 to get back to Yb. This is so it'll overflow into the next unit of measure before hitting one -- they want you to see 099 GB instead of 1,023 MB 08-17-2005, 3:22 PM procyon112 is not online. This programmer takes the "no arbitrary limits" philosophy seriously. As for neccessity: Moores law, although it doesn't directly apply to sto rage, has shown to parallell storage capacity pretty well as a general r ule of thumb. Since 2^10=1024, we can expect to hit the next "depth" ev ery 10 Moore's cycles, or 15 years. Using Moore's law as a rough guide, I can expect to be dealing with 1000 yottabytes (1 nonabyte) in 60 Moore's cycles, or ap proximately 90 years. So, in 2085 this software would most likely break occassionally if it had an arbitrary limit. That is not to say that it won't break event ually, as word length seems to grow linearly, but I'd say he bought hims elf an extra 40 years or so with this adjustment. And to put the storage into perspective, 1 yottabyte is about 2 moles of bytes, which given 1 molecule per bit storage would fit rather handily i n something weighing 16-32 grams. We haven't even entered the world of overlapping quanta, so in realit y, these sizes are not unbelievable... You may need to multiply those grams by a factor for different elements. All of this is moot, of course, as we know that in the future all compute rs and robots will be positronic. One molecule of hydrogen per bit would yield about 16 grams. But that's if there was one iron atom for each BYTE, not bit. Multiply by 8 and you're at about 900 grams, or about 2 lb. This programmer takes the "no arbitrary limits" philosophy se riously. As for neccessity: Moores law, although it doesn't directly apply to sto rage, has shown to parallell storage capacity pretty well as a general r ule of thumb. Since 2^10=1024, we can expect to hit the next "depth" ev ery 10 Moore's cycles, or 15 years. Using Moore's law as a rough guide, I can expect to be dealing with 1000 yottabytes (1 nonabyte) in 60 Moore's cycles, or ap proximately 90 years. So, in 2085 this software would most likely break occassionally if it had an arbitrary limit. That is not to say that it won't break event ually, as word length seems to grow linearly, but I'd say he bought hims elf an extra 40 years or so with this adjustment. And to put the storage into perspective, 1 yottabyte is about 2 moles of bytes, which given 1 molecule per bit storage would fit rather handily i n something weighing 16-32 grams. We haven't even entered the world of overlapping quanta, so in realit y, these sizes are not unbelievable... I find your analogies troublsome in helping me comprehend th e size of a yottabyte, problably because my standards of comparison date from before the cdrom / 3 1/4" floppy disk. Can you translate your measurments into the much more standard 'pages of typewriten paper' and 'libraries of congress'? Thanks Vic-20 Guy 08-17-2005, 4:06 PM TheMuuj is not online. The extra code to make it support Yottabytes is minimal, and I do not think it would degr ade performance (it's not likely to be the root cause of a lot of cache misses or page faults). I admit it is future-proofing to the extreme, but there's no harm from do ing that. For those who disagree, where would be a better place to stop? We're almost there for common hard drive sizes (I give it three years ), so it may be best to move on to Petabytes for a maximum theoretical n umber that will work for the forseeable future. So why not just go as high as we have consistant names for and be done with it forever, an d never have to revisit the code again. At least he acknowledges how si lly such a number would be. And if a server reports a file that big, at least it won't overflow the space allocated to display the size. Admittedly I've become more fond of referring to such units as "Kibibytes " instead of "Kilobytes," but use of either style of unit is not a WTF u nless you choose to mix 1000-based and 1024-based unites. Furthermore, I wish I could compare the YUM source code to the Windows Ud pate code. Or how about the code that bugs you until you reboot, interrupting your w orkflow until you're forced to reboot and take an early break? My minimal experience with YUM has been qui te pleasant, and if I saw an update that was 1000 Yottabytes, I would th ink twice about downloading it, and then laugh because there's probably an error on the server side. TheMuuj wrote: Admittedly I've become more fond of referring to such units as "Kibibytes " instead of "Kilobytes," but use of either style of unit is not a WTF u nless you choose to mix 1000-based and 1024-based unites. a poodle whose hair has been died pink is appropriately called "kibi". Or how about the code that bugs you until you reboot, interrupting your w orkflow until you're forced to reboot and take an early break? I assume you're talking about the nag dialog that pops up after an update is completed for Windows. You can increase the nag timer or completely disa...