Re:Free Punch Card -- Then Capitalism Takes Over
on
Why We Fight
·
· Score: 1
Oh, I know there's plenty of women who could beat me up with or without a Punch Card.;) But they've seriously trained for it, whether in martial arts or extensive weight training. Otherwise, men do have an inherent advantage in strength. As long as they're generally fit.
And, honestly, if people get into serious fights they usually don't just punch and kick. A crowbar is a great equalizer.;)
Re:Free Punch Card -- Then Capitalism Takes Over
on
Why We Fight
·
· Score: 2, Interesting
Suddenly, a new market for Punch Cards opens up. Sellers and buyers haggle over price and everyone who owns one can sell it!
Rich people could own dozens of punch cards and personally punch the living daylights out of anyone they choose.
Or, better yet, they could hire professional boxers and lend them their punch cards with a contractually signed designated target. Think Mike Tyson as Hit (er Punch) Man. Talk about getting your money's worth.;)
Also, punch cards could be considered sexism since (on average!) women can not punch as hard as men.
How do you think the PhD became so knowledgable about their sub-field?
Getting a PhD says you've learned how to learn. I'm currently going for a PhD and I could easily stop what I'm doing, switch into some other topic, learn everything about that topic in 1-2 years, and then do novel work in that field. That's what I did in the first place. That is what having the PhD demonstrates.
And, really, to get a PhD you need a bachelors/masters. So that "broad foundation of knowledge" is never lost. You learn how to use and synthesize it into novel work.
But it does work for the scientific community. In order to publish papers, you need to peer-review articles.
So, in order to file patents, you might be required to peer-review patents. And the reviewers will see the contents of the patent application before the public, giving them a slight head start. That's a payoff for a relatively small amount of work.
It could work, imo. One question is whether current companies who file many patent applications would favor the status quo or a new, more efficient method.
What would happen if all patents were reviewed in a peer-review fashion, similar to academic scientific articles?
Each patent would be sent to 3-4 reviewers who are knowledgable about the specific field. The reviewers describe the novelty of the patent (or lack of), but must cite sources to reject the patent as not new.
The USPTO examiners then act as judges, read the reviews, perform their own research using the sources given to them by the reviewers, and finally making a judgement.
That way, the examiners get both the knowledge of the "experts" and also the final call on new/not new.
If you think the reviewers of the patent will try to nullify the patent and patent the idea themselves, then there's many safeguards to prevent that from happening. Reviewers would not be able to patent the same idea (of course). Reviewers would be required to prevent evidence of any prior work. The names of reviewers would stay on public record just in case the reviewers decide to infringe on the patent and later get sued for infringement.
LAN Parties are something that a Gamestop or EB (usually in Malls) can't do, but lots of people love to go to them. You can charge entry to play the hottest new games in a giant LAN party and sell snacks alongside. What you'll be selling is the experience of playing the hottest XYZ multiplayer game in 'wild' 32-64 player matchups.
Of course, you'll need the hardware and a good server. You'll have to run the numbers to see if it's worth it (ie. how much you need to charge to cover the hardware costs and if people will pay it). I would keep the entry cost low, but sell a wide selection of tasty snacks/sodas at large markup prices.
WWII was also the first time that many Americans had coffee... of any type. And it was the mass produced, ground up, just add hot water type given to soldiers. So when you argue about Americanos vs. Espresso's, the WWII soldier would probably demur and say, "Both taste like crap to me, but it's hot and it keeps me awake." I think our tastes have become a lot more sophisticated since then.
But the joke 'Americano' was probably merited back then.
For many researchers, it will offer a familiar environment. It means you can test stuff on your desktop then just upload it to the the server and it works.
That's true. But that's also true for Linux. I do exactly what you say: I write code and compile on my x86 Linux box and then recompile and run on a large Itanium2 cluster.
If you're a researcher using that software you need a windows cluster.
What about the software requires a specific OS? For mathematical/scientific/engineering applications, most code is written in C/C++/Fortran. Very good compilers for Windows need to be available to run the code. While Intel's Compaq visual Fortran is available, no new versions are being developed. Will MS develop new compilers for the languages most used by mathematicians/scientists/engineers? People will not use.NET for scientific applications.....
Linux has dominated the HPC community because a) it's free; b) free (or really good) compilers are available; c) people who develop the hardware for supercomputers (IBM, SGI, Cray, Sun, etc) tend to be Unix-centric (and going from Solaris/AIX/UNICOS to Linux is relatively easy); d) Linux has good IDEs for programmers (but the people who tend to develop HPC applications are not computer scientists, they're physicists, engineers, mathematicians, chemists, biologists, etc!); e) Linux is available for the desktop (vs. AIX / UNICOS); f) Linux has better security than Windows; g) Porting code from any Unix to Linux is relatively easy, (which is huge, because there is a LOT of HPC code out there. HPC people tend to reuse rather than redevelop). Most HPC code does not use too many OS-specific hooks because everyone wants their code to run on as many different computers as possible. Contrast this to Windows, where in order to get the most performance you almost have to use OS-specific hooks.
Just a few reasons. Some more compelling than others.
There's really no need to apologize, but thank you.
Yeah, most of my code is loosely coupled over multiple processors so a Grid-type environment with a high bandwidth, but (relatively) high latency connection is ok for me. I know a little about IBM's BlueGene system, but not much. They recently did some optimization of their dual core chips to allow the communicator proc to handle some computation when it's idle (I think this story was on/. with some cheesy heading.) They're starting to deploy BlueGene systems. The San Diego supercomputing facility recently received one. I guess it's still too early to see how well it performs on highly coupled parallel code (besides benchmarks). But we'll soon see!
You're right about me being just a 'user' of HPC systems. But what excites me most is not a new Windows cluster, but the type of massively parallel or Grid systems being developed, like the NSF TeraGrid. That is one cool system: multiple supercomputers at multiple Universities, sharing filespace through a gpfs-WAN, Grid-enabled with Globus, and each one with hundreds to thousands of cpus (mostly running Linux!).
And new computing architectures like the Cell processors. That'll probably be the next level of scalable parallel (vector) computing, if their compilers can automatically vectorize/parallelize the code well enough.
That's the type of parallel computing that excites me (as a user). What will MS/Windows do for me? How will they save me time or $? What will they offer that doesn't already exist or is not in the works? How good are their compilers? They have a long way to go before breaking the Top500 and I really don't think their clusters will be in demand in the meantime.
It's cool that you're going for your PhD in parallel computing. It's a very interesting field. But, here's a tip for academia: Don't take any argument personally, especially if it's during the peer-review process. You'll save yourself a lot of unneeded grief. For example, going back through my conversation, there's no reason to call me a jerk. (And even if there is, you shouldn't ever get personal. It just looks unprofessional.) O well, I don't take it personally.;)
HPC ppl don't care about software with new "features", but without new capabilities. Go to www.netlib.org and browse all of the HPC code that is already available and is readily reusable. It's quite a lot.
And the APIs you speak of... I wouldn't trust Microsoft to build scientific APIs for shit. They have this wonderful reputation for not caring about bugs... and while you might not care about a bug that causes the occasional BSOD, a bug in a scientific API is more likely to produce wrong results. Yeah, that's huge. I won't even bother with MS.
Actually, this is what Microsoft tried to do at my University. They donated a Unisys 32 proc Itanium2 cluster with Windoze loaded. After 6 months of non-use, our techies loaded Linux on 16 procs and people started to use the Linux portion. Still, no one uses the Windoze portion. O well.
In addition, MS will not only have to donate the computers, but also provide _top-notch_ C/Fortran compilers for Windoze. Yeah, I'll be holding my breath....Intel has already beat them to punch by years.
MS had a joint venture with Unisys a while back. They loaded a 32 proc cluster of Itanium2's with the Windoze server OS and _donated_ it to my institution for Bioinformatics research. Well, the machine sat for the longest time unused because _none_ of the HPC people in my _entire_ University wanted to use it. Eventually, they partitioned the system and loaded Linux using 16 of the procs. And...people started using it.
Security issues are irrelevant in a lot of cases. Scientific computing isn't done on computers attached to the internet...it is done on intranets consisting of specialized hardware streamlined for the needs of HPC. Most HPC programs don't even attach themselves to ethernet networks, but rather to things like Myrinet (bypass OS calls to reduce overhead GREATLY) that are intended for HPC. Being DDoS'd, or having a 'zombie cluster' etc are not really issues here.
Scientific computers are _often_ connected to the internet. How else do scientists/engineers connect to them? And hacking does happen. (It happened at my institution.)
The connection is usually over ssh. It's secure, but not perfect.
Maybe they should put Patton in charge of granting Patents. He'd more likely slap the guy trying to patent "a novel patent for doing something everyone else is already doing".
I think the USPTO forgot what the word "novel" means. Can someone send them a dictionary with the word circled, underlined, and highlighted??
The most recent space combat sim that I've played (and didn't suck) was Allegiance. Very TIE-fighter esque with flyable capital ships, a commander who directs the battle and creates special ships/technology like in a RTS game, and a capable physics engine.
MPI is the de facto standard for processor to processor communication with MPICH's implementation being the most stable and well known one. For "lower-level" communication, you can also use UPC or Co-Array Fortran, which are often used on serious computing architectures, like the Cray X1. The difference between MPI and these language-level parallel additions is that, on the language level, the transfer of data between processor looks like assignment between variables, where one of the dimensions of the variables includes the processor identities themselves.
So, in MPI, to send data from processor 0 to processor 1, the 0 processor would call a function
which must match an MPI_Receive in the processor 1's executing program.
In Co-Array Fortran, OTOH, it would look like
data[1] = data[0]
The fun part about Co-Array Fortran is that 'data' can be defined as a regular multi-dimensional array so that data(1:10,1:20)[1] = data(40:50,60:80)[0] is perfectly ok _and_ the 'processor dimension', denoted by the []'s in Co-Array, can also be accessed using Fortran notation so that data[1:100] = data[0] is perfectly ok too. Or even data[2:2:100] = data[0] for only even processors.
In truth, a Co-Array Fortran compiler will probably turn the language-level additions into MPI function calls (because that's the standard), but I find CAF to be more elegant than MPI.
UPC is similar to Co-Array Fortran, but for C. I've never used it before, though.
Google Co-Array Fortran or UPC for more information.
The White House should have suggested a few humurous parodied versions of the Seal. That way, they can make their point, look less like 'the bad guys', and prove that they have a sense of humor about the whole thing.
Of course, that would require some creativity on their part, which they rarely demonstrate.
Oh, I know there's plenty of women who could beat me up with or without a Punch Card. ;) But they've seriously trained for it, whether in martial arts or extensive weight training. Otherwise, men do have an inherent advantage in strength. As long as they're generally fit.
;)
And, honestly, if people get into serious fights they usually don't just punch and kick. A crowbar is a great equalizer.
Suddenly, a new market for Punch Cards opens up. Sellers and buyers haggle over price and everyone who owns one can sell it!
;)
Rich people could own dozens of punch cards and personally punch the living daylights out of anyone they choose.
Or, better yet, they could hire professional boxers and lend them their punch cards with a contractually signed designated target. Think Mike Tyson as Hit (er Punch) Man. Talk about getting your money's worth.
Also, punch cards could be considered sexism since (on average!) women can not punch as hard as men.
How do you think the PhD became so knowledgable about their sub-field?
Getting a PhD says you've learned how to learn. I'm currently going for a PhD and I could easily stop what I'm doing, switch into some other topic, learn everything about that topic in 1-2 years, and then do novel work in that field. That's what I did in the first place. That is what having the PhD demonstrates.
And, really, to get a PhD you need a bachelors/masters. So that "broad foundation of knowledge" is never lost. You learn how to use and synthesize it into novel work.
But it does work for the scientific community. In order to publish papers, you need to peer-review articles.
So, in order to file patents, you might be required to peer-review patents. And the reviewers will see the contents of the patent application before the public, giving them a slight head start. That's a payoff for a relatively small amount of work.
It could work, imo. One question is whether current companies who file many patent applications would favor the status quo or a new, more efficient method.
What would happen if all patents were reviewed in a peer-review fashion, similar to academic scientific articles?
Each patent would be sent to 3-4 reviewers who are knowledgable about the specific field. The reviewers describe the novelty of the patent (or lack of), but must cite sources to reject the patent as not new.
The USPTO examiners then act as judges, read the reviews, perform their own research using the sources given to them by the reviewers, and finally making a judgement.
That way, the examiners get both the knowledge of the "experts" and also the final call on new/not new.
If you think the reviewers of the patent will try to nullify the patent and patent the idea themselves, then there's many safeguards to prevent that from happening. Reviewers would not be able to patent the same idea (of course). Reviewers would be required to prevent evidence of any prior work. The names of reviewers would stay on public record just in case the reviewers decide to infringe on the patent and later get sued for infringement.
Do you think it would work?
LAN Parties are something that a Gamestop or EB (usually in Malls) can't do, but lots of people love to go to them. You can charge entry to play the hottest new games in a giant LAN party and sell snacks alongside. What you'll be selling is the experience of playing the hottest XYZ multiplayer game in 'wild' 32-64 player matchups.
Of course, you'll need the hardware and a good server. You'll have to run the numbers to see if it's worth it (ie. how much you need to charge to cover the hardware costs and if people will pay it). I would keep the entry cost low, but sell a wide selection of tasty snacks/sodas at large markup prices.
It's worth investigating, though.
Flashcards.
Hundreds of them.
'Nuff said.
Sucks, eh?
So you're saying the Aliens had a lisp?? ;)
With the acid blood (and spit?) that would hurt!
WWII was also the first time that many Americans had coffee ... of any type. And it was the mass produced, ground up, just add hot water type given to soldiers. So when you argue about Americanos vs. Espresso's, the WWII soldier would probably demur and say, "Both taste like crap to me, but it's hot and it keeps me awake." I think our tastes have become a lot more sophisticated since then.
But the joke 'Americano' was probably merited back then.
For many researchers, it will offer a familiar environment. It means you can test stuff on your desktop then just upload it to the the server and it works.
.NET for scientific applications .....
That's true. But that's also true for Linux. I do exactly what you say: I write code and compile on my x86 Linux box and then recompile and run on a large Itanium2 cluster.
If you're a researcher using that software you need a windows cluster.
What about the software requires a specific OS? For mathematical/scientific/engineering applications, most code is written in C/C++/Fortran. Very good compilers for Windows need to be available to run the code. While Intel's Compaq visual Fortran is available, no new versions are being developed. Will MS develop new compilers for the languages most used by mathematicians/scientists/engineers? People will not use
Linux has dominated the HPC community because a) it's free; b) free (or really good) compilers are available; c) people who develop the hardware for supercomputers (IBM, SGI, Cray, Sun, etc) tend to be Unix-centric (and going from Solaris/AIX/UNICOS to Linux is relatively easy); d) Linux has good IDEs for programmers (but the people who tend to develop HPC applications are not computer scientists, they're physicists, engineers, mathematicians, chemists, biologists, etc!); e) Linux is available for the desktop (vs. AIX / UNICOS); f) Linux has better security than Windows; g) Porting code from any Unix to Linux is relatively easy, (which is huge, because there is a LOT of HPC code out there. HPC people tend to reuse rather than redevelop). Most HPC code does not use too many OS-specific hooks because everyone wants their code to run on as many different computers as possible. Contrast this to Windows, where in order to get the most performance you almost have to use OS-specific hooks.
Just a few reasons. Some more compelling than others.
There's really no need to apologize, but thank you.
/. with some cheesy heading.) They're starting to deploy BlueGene systems. The San Diego supercomputing facility recently received one. I guess it's still too early to see how well it performs on highly coupled parallel code (besides benchmarks). But we'll soon see!
Yeah, most of my code is loosely coupled over multiple processors so a Grid-type environment with a high bandwidth, but (relatively) high latency connection is ok for me. I know a little about IBM's BlueGene system, but not much. They recently did some optimization of their dual core chips to allow the communicator proc to handle some computation when it's idle (I think this story was on
You're right about me being just a 'user' of HPC systems. But what excites me most is not a new Windows cluster, but the type of massively parallel or Grid systems being developed, like the NSF TeraGrid. That is one cool system: multiple supercomputers at multiple Universities, sharing filespace through a gpfs-WAN, Grid-enabled with Globus, and each one with hundreds to thousands of cpus (mostly running Linux!).
;)
And new computing architectures like the Cell processors. That'll probably be the next level of scalable parallel (vector) computing, if their compilers can automatically vectorize/parallelize the code well enough.
That's the type of parallel computing that excites me (as a user). What will MS/Windows do for me? How will they save me time or $? What will they offer that doesn't already exist or is not in the works? How good are their compilers? They have a long way to go before breaking the Top500 and I really don't think their clusters will be in demand in the meantime.
It's cool that you're going for your PhD in parallel computing. It's a very interesting field. But, here's a tip for academia: Don't take any argument personally, especially if it's during the peer-review process. You'll save yourself a lot of unneeded grief. For example, going back through my conversation, there's no reason to call me a jerk. (And even if there is, you shouldn't ever get personal. It just looks unprofessional.) O well, I don't take it personally.
Heh, sure. If you ask them which OS they prefer for HPC, I will bet you $50 they say Linux (or some other Unix).
HPC ppl don't care about software with new "features", but without new capabilities. Go to www.netlib.org and browse all of the HPC code that is already available and is readily reusable. It's quite a lot.
And the APIs you speak of
Rofl, the OP is correct and you're wrong.
Water != Hydrogen.
Actually, this is what Microsoft tried to do at my University. They donated a Unisys 32 proc Itanium2 cluster with Windoze loaded. After 6 months of non-use, our techies loaded Linux on 16 procs and people started to use the Linux portion. Still, no one uses the Windoze portion. O well.
In addition, MS will not only have to donate the computers, but also provide _top-notch_ C/Fortran compilers for Windoze. Yeah, I'll be holding my breath....Intel has already beat them to punch by years.
Unless it's an application that has already been parallelized and only needs a bigger / faster cluster to work on.
Scientific and video editing/rendering HPC applications are frequently parallelized so the work has already been done!
MS had a joint venture with Unisys a while back. They loaded a 32 proc cluster of Itanium2's with the Windoze server OS and _donated_ it to my institution for Bioinformatics research. Well, the machine sat for the longest time unused because _none_ of the HPC people in my _entire_ University wanted to use it. Eventually, they partitioned the system and loaded Linux using 16 of the procs. And...people started using it.
I think it's prediction of what's to come.
Security issues are irrelevant in a lot of cases. Scientific computing isn't done on computers attached to the internet...it is done on intranets consisting of specialized hardware streamlined for the needs of HPC. Most HPC programs don't even attach themselves to ethernet networks, but rather to things like Myrinet (bypass OS calls to reduce overhead GREATLY) that are intended for HPC. Being DDoS'd, or having a 'zombie cluster' etc are not really issues here.
Scientific computers are _often_ connected to the internet. How else do scientists/engineers connect to them? And hacking does happen. (It happened at my institution.)
The connection is usually over ssh. It's secure, but not perfect.
That's actually Patton. ;)
Maybe they should put Patton in charge of granting Patents. He'd more likely slap the guy trying to patent "a novel patent for doing something everyone else is already doing".
I think the USPTO forgot what the word "novel" means. Can someone send them a dictionary with the word circled, underlined, and highlighted??
You're absolutely right!
The most recent space combat sim that I've played (and didn't suck) was Allegiance. Very TIE-fighter esque with flyable capital ships, a commander who directs the battle and creates special ships/technology like in a RTS game, and a capable physics engine.
It was loads of fun. I wish they made a sequel!
MPI is the de facto standard for processor to processor communication with MPICH's implementation being the most stable and well known one. For "lower-level" communication, you can also use UPC or Co-Array Fortran, which are often used on serious computing architectures, like the Cray X1. The difference between MPI and these language-level parallel additions is that, on the language level, the transfer of data between processor looks like assignment between variables, where one of the dimensions of the variables includes the processor identities themselves.
...)
So, in MPI, to send data from processor 0 to processor 1, the 0 processor would call a function
Call MPI_Send(dataout, datacountout, datatype, destination processor #,
(Fortran style)
which must match an MPI_Receive in the processor 1's executing program.
In Co-Array Fortran, OTOH, it would look like
data[1] = data[0]
The fun part about Co-Array Fortran is that 'data' can be defined as a regular multi-dimensional array so that data(1:10,1:20)[1] = data(40:50,60:80)[0] is perfectly ok _and_ the 'processor dimension', denoted by the []'s in Co-Array, can also be accessed using Fortran notation so that data[1:100] = data[0] is perfectly ok too. Or even data[2:2:100] = data[0] for only even processors.
In truth, a Co-Array Fortran compiler will probably turn the language-level additions into MPI function calls (because that's the standard), but I find CAF to be more elegant than MPI.
UPC is similar to Co-Array Fortran, but for C. I've never used it before, though.
Google Co-Array Fortran or UPC for more information.
The White House should have suggested a few humurous parodied versions of the Seal. That way, they can make their point, look less like 'the bad guys', and prove that they have a sense of humor about the whole thing.
Of course, that would require some creativity on their part, which they rarely demonstrate.
He's a Republican and his top contributions come from businesses located in Minnesota.
CONSPIRACY, I declare!
(Yes, I'm joking.)
Potheads are known throughout the world for their brilliance and intellect.
Maybe the stuff induces brain growth..but it could be just a big fat cancerous tumor.
That could explain a lot of things.