"I'd probably just tell him to buy the novel hardware. I bought a very nice Indigo2 for $400-odd a few months back, and it's a cooler experience to have the real equipment someplace"
How is this a solution to the problem he wants solved?
He wants to test his software on many different platforms (different OSs, different CPS, multi-cpu machines), and more importantly, he wants to test it on the CURRENT platforms his (potential) customers use.
How does buying one, 10 year old machine, in anyway approximate what he needs done? You know, maybe he can just use the Commodore 64 and Apple II I have lying in my basement.
Hey, I really cannot understand your animosity towards the development of new languages. At the very worst, you can are free to bury your head in the sand, ignore their existance, and go on with your life. At the best, this might be the perfect tool for you to do your programming with.
Now, there are very good reasons why a programmer, even someone who will never in their career look at something other than C, benefits from this work.
Computer Science is a continually evolving field (thats why universites have CS departments, filled with people doing research in CS). Because some computer scientists study programming languages, programming languages are evolving as well. This means that researchers keep introducing new and different features into new languages.
Of course, the vast majority of these new languages never become popular (or ever get used for even a single real program), but this collection of ideas influences more "mainstream" language. Things like classes, type-safety, generics, etc., all began as research ideas and then migrated into production systems. (Of course, Eiffel is well beyond the research language phase).
So even if you never adopt a cutting edge language, eventually, a tool you use will exist, or have been made better, because of that language.
Point is, instead of bitching you should be appreciative.
I got a bunch of problems with this model. I'll mention them. Feel free to disagree.
I'm assuming that the binary must be free and freely distributable, otherwise, who would ever know about this project, and who, then, would donate money towards it. (Or, of course, this could have already been a commercial product that was not freely distributable, but that has a wide following.)
1) If a user does not care about every seeing the source code, he has no reason to pay for it, because again, he already has an unlimited right to use it as much as he wants.
2) Even if a user would like to see the source, he knows that it will one day be released, regardless of making a donation.
3) Even if a user would like to see the source as soon as possible, unless he can afford the entire ransom amount, he has no reason to believe that his donation will make the source released earlier: either not enough other people donate, so his donation is meaningless, or more than enough have donated, in which case his donation is unnecessary. (Do a google search on Kitty Genovese to see what I'm talking about).
Anyway, it doesn't seem like there is any reason for someone to donate, except for the same reasons they donate to OSS projects now. In fact, people might donate less, because nobody likes to pay "ransom" for anything.
In general, there appear to be two styles of masters degrees: those that are more research oriented, and those that are more professional oriented. Different schools offer different ones (some offer both).
Profession masters usually consist mostly of course work. Part of the courses will be a graduate level "redo" (the courses will be more indepth and expand on the knowledge you gained as an UG) of some of your undergrad work (usually a fixed curriculium), while the other courses will be more advanced, allowing you to study things you find more interesting.
A more research oriented masters is similar to the program above, but has a thesis project in addition to (or in substitution for) some of the courses. It is "independent" research, you will be working with a faculty advisor as part of his/her research group.
Usually research masters require you to be a full time student (and some even offer fellowships / assistanceships to help you financially), whereas many professional masters can be done while you are working. For example NYU offers their masters corses in the evening.
The choice between the two types of programs depends on what you would like to accomplish, and what your time and financial limitations are. Both will impress potential employeers. I'd give a slight edge to the research masters, because you will have something very interesting to discuss with interviewers, and if you present them with a copy of your thesis it will be impressive. Also, certain "research" type jobs might want to see proof that you could do research before they hire you.
If you do a research degree, you might be convinced to stay on (or continue somewhere else) and get a PhD (and, you'll have a better sense of what one is like), but it is definitly not a formal stepping-stone. Most PhD program will take people straight out of undergrad, but will require them to do some general course work and obtain a masters en-passant. Having a masters already might help reduce that course load, or at least make it easier.
The International Society to Disprove the Moon Landings (ISDML) had recently determined that Christopher Columbus had never set foot in North America, and that any evidence presented by the Imperial Spanish Court of Ferdinand and Isabela was indeed a hoax.
There is no proof that Columbus, nor any of the men in his three vessels, had ever crossed the Atlantic and landed in North America. The ISDML believe that any evidence to the contrary was generated as part of an elaborate hoax orchestrated by the Spanish Government in an attempt to convince the world that they were the winners in the "Sea Race" versus their rival nation, Portugal. All evidence was fabricated at an elaboratly constructed studio in Seville, in a blatent attempt to deceive the public.
In fact, the ISDML has failed to find evidence that Europeans have ever reached North America, nor that this 'fabeled' contined does indeed exists.
It seems you have two issues: having a managable build environment, and finding different compilers that agree on what c++ is.
There is an utility, CMake (do a search), which is a CrossPlatform make tool. You set up some high level specifications (which files belong to which object, etc.) and it generates the platform specific make files (or VisualStudio projects) automatically. I have used it a little bit, to develop the software for linux and windows, but don't know if it would meet all your needs.
As far as getting all your compilers (and headers, and libraries, etc.) to agree, the easiest solution would be to use the same compiler on each platform (gcc). To address some comments others have posted: for numerical applications running on Windows (at least the ones I compile), gcc by far outperforms VC7. It is a much more agressive optimizer, and has optimizations for P4 that VC does not yet have.
So, I would say the opposite, that having a graduate program is beneficial for undergraduates. Here are my reasons:
Opportunity to take graduate classes. Grad classes are going to be more advanced and more detailed that the UG ones. It is also likely that there will be more grad classes in a particular area (2 or 3 architecture classes, as opposed to just one UG class). Therefore, when you find a particular sub-area that you like (eg. graphics), you have the chance to take a few cool/advanced classes in that subject.
Research opportunities. Schools with graduate programs are usually research oriented (those that offer PhDs are by their very nature -those that just offer the MS aren't necessarily research oriented, it depends on the program). This means that there will be multiple opportunities for you to participate on a research project, either working in a professor's research group, or doing "sponsored" undergraduate research. If you might consider graduate school, doing UG research will give you good insight into the process. Additionally, the professors at a research school will be active researchers, they will know what projects are going on at other schools, what are current "hot topics" etc. At a non-research school, a professor is probably not really doing active research anymore.
Given those arguments, I think some important questions to ask are a) Do you allow UGs to take grad classes? b)What are the opportunities to do research as an undergrad? c)(Especially if you might consider grad school)What percentage of your UGs go on to grad school, and where do they get accepted?
I'll agree that a clever programer might save a few instructions here or there, but I'll argue that in the age of RISC, and especially EPIC, instruction count does not have any effect on performance.
With a modern machine executing at 1Ghz, lets assume its throughput is close to 1 billion (10^9, I think these things are different in England) instructions per second. So for any normal application (everything except weapon guidance, etc.) that runs for a few minutes, even if you can save 100 million (dynamic) instructions, you are not going to even notice. And just imagine how hard it is to eliminate 100 M dynamic instructions for a real, non trivial, program.
For IA-64, we expect a lot of performance to come from the fact that it can execute many instructions in parallel (thats what Intel is betting on). It is much easier for a machine to find ILP, than for a human.
And I'm not claiming that there will not be a few cases where a programmer could write better assembly than the compiler, but that even an expert assembly programmer will get beat 99 out of 100 (at least) for IS-64.
As an aside, reorganizing data structures (usually to take advantage of the memory hiearchy) is a very hot research topic right now. Reorganizing algorithms, i.e. loop tiling, etc., has been studied for about 10 years, and is finally beginning to make its way into commercial compilers. It was easier to beat a compiler when it was just doing register allocation for 4 GP registers. Now, as the compilers are getting more and more advanced, it is much much harder to do better than them.
Well, they days of hand crafted assembly, except for a few special purposes, have long since past. And no one expects assembly writers to be competitive with the compiler's ability to discover and explot ILP.
But the example you mention won't actually cause assembly writers any problems: the code won't be tied to a specific version of EPIC.
The IA-64 assembly contains so-called "stop bits", which specify that the instruction(s) following the bit cannot be run in parallel with those before the bit. Those bits have nothing to do with the actual number of instructions that the machine is capable of handling. For example, if a program consisted of 100 independent instructions, the assembly would not contain any stop bits. Now the actual machine implementation might only handle 2 or 4 or 8 instructions at a time, but that does not appear anywhere in the assembly. The only requirement is that the machine respect the stop bits.
Now, you might question how it deals with load-value dependencies (ie. load a value into a register, use that register). Obviously, the load and use must be on different sides of a stop bit, but that would still not guarantee correctness. I'm not sure how IA64 actually works (and someone should reply with the real answer) but I imagine that either: a) loads have a fixed max latency, and the compiler is required to insert as many stop bits between the load and the use to ensure correctness, or b) the machine will stall (like current machines).
Either way, the whole point of speculative loads is to avoid that being a problem.
If A implies B (ie. if something is secret then it is proprietary) does not mean B implies A (if it is proprietary then it is secret). It also does not mean ~A imples ~B (if it is not secret then it is not proprietary).
Secrecy has nothing to do with proprietaryness: the whole point of the patent system is to have proprietary techniques open for all to read.
Condor is a software system being developed as part of a research project at an university, just like thousands of others.
The CMU thingy is a consortium, i.e. an agreement for a whole bunch of people/entities to work together. Assumably, they will organize conferences and workshops, hand out grant money, to encourage work in this area.
I don't understand the title of this article. What's "secret" about this? Propriatary, yes, and perhaps it's wrong for the gov. to turn our tax money into a Microsoft product (but of course, the government gives billions in tax rebates, subsidised loans, etc. to EVERY american business), but there is definitly nothing secret about this.
I install VMWare on my OS
I install an OS in that VMWare
I install VMWare on that OS
I install an OS in that VMWare
I install VMWare on that OS
I install an OS in that VMWare
Hey. Just a couple of days I donated $20 to the EFF (grad student budget constraints).
I'll tell you something, laws can be bought ("donations" to lesiglators), and court cases can be bought (better lawyers cost more). It seems like big business, etc., always win these things, but the reason is because they have the money to do the buying.
If us, the regular people, those who want to own what we pay for, who want the right to watch our DVDs with the player we choose, to save our e-books on to a different medium, to uninstall parts of the operating system that we don't want, to take apart our:CueCats, all donated $20 to the EFF, or other organizations, suddenly we might be able to buy some justice as well.
So forego a couple of extra beers, a couple of rounds of pool, StarWars tickets, etc. and dontate a couple of bucks. Maybe then we can see a difference.
Are you joking around, or are you being a real schmuck? Let me tell you something, don't start insulting people when you don't know the first thing you are talking about.
dll is short-hand for the doubly-linked-list you mentioned yourself, not some Microsoft abreviation for a dynamically linked library.
Now imagine you had two elements in a list, A and B. A points to B, and B points to null. Figure out how you can reverse that list. Now extend to the general case.
The system of laws you describe is very naive. The problem is, that once someone's rights have been infringed, it may be too late for them to have their rights restored.
To take the easiest example, look at your gun control "wants" - people "should be allowed to buy a gun", but nobody should be "allowed to shoot you". Once you have been shot (and killed), it is imposible for your right to life to be restored. Although we can punish the killer for infringing your right, it does not matter to you.
Now, because we value the right to life more than the right to own a gun (well, I sure hope so), we have preventative laws: laws that infringed some peoples' rights with the hope that they protect the rights (or more important rights) of others.
Of course, my argument is not limited to just gun control.
A libretarian system requires people to defend their own rights. Unfortunatly, a person's (or business') ability to defend his rights is limited by its size/wealth/power. Far from being fair and free, a libretarian system becomes one where the wealthy/powerful have all the freedoms, and the average person has no way to defend or exercise their "rights"
I'm very glad to see all the mainstream press that this proposed legislation is getting.
Hopefully, as more and more editorials criticize this law, the general public will begin to see what is at stake and demand that Congress abandon this Disney law.
It is not the role of the government to protect the revenue streams of industry; but somewhere and somehow this has become their sole occupation. In a democratic free-market, the government should ensure fairness (I'm not a libertarian, I have no belief in an entierly market-based system) - unfortunatly in our system the government seems only concerned with appeasing the largest corporations, with no regard for the people they are presumed to serve.
If we all stand up, and let our politicians know that "enough is enough" hopefully they will change their ways. And it seems like more and more "everyday" people are beginning to make their voice heard (witness protests in Seattle, etc.), but the corporate media does its very best to quiet this dissent.
Unfortunatly the American idea of freedom has been transformed, and what remains is solely a concern with the freedom to make money.
Does anybody have any pointers/info regarding the Microsoft library licensing forbidding open source as refered to in the following quote?
It's actually ironic that, because Microsoft has started putting licences on Windows libraries now which basically forbid you from writing free or open source using their Windows libraries. They're specifically trying to shut out and control. They're monopolists.
I can't imagine how someone can tell me I can't give something that I made away for free, but that I can sell it.
I was wondering if AMD has released a reference to the ISA for the Hammer architecture, because without knowing what it looks like, I have many, many questions.
For instance, will the hammer have a modern ISA, like the IA-64, i.e. general purpose registers, speculative execution, predicate bit, VLIW, or will it be an extension of the current x86 ISA,
If its the former, with x86 to Hammer translation at the instruction decode phase, AMD will be offering a useful solution: run your current apps now, and slowly replace them with the new version of them.
If its the latter, where the chip is just a 64-bit extension to the x86, it doesn't seem like they are offering much, just "hey, I have a 64bit CPU" bragging rights and can address more memory.
In either case, Linux users won't really gain much from supporting the old ISA: they'll choose the fastest hardware and type 'make'.
You should check out the AC3 project at Cornell University's Theory Center, which is "home to the largest Windows-based high-performance cluster complex in the world".
There are numerous machines, such as the 256 CPU Veclocity 1, that run MPI-Pro over MyraNet(?), that was one of the 500 fastest computers.
Windows is a very viable and high performance solution for running scientific parallel application, and you should order the $8.00 evaluation kit from MS and check it out for yourself.
I've developed for some of these systems, and have been very impressed. I've worked with Linux clusters too, but only on older, weaker machines, so it would not be fair to compare the two. (Btw. all opinions here are my own, and in no way should be construed as those of Cornell or the TC).
One thing you might want to consider is administration time, scientists, who are already annoyed that programming destracts them from their real work, might not want to devote the time and effort to learn to and administrate all those linux boxes.
Anyway, if the MS rep is very eager, he might offer you some great deals. MS is very eager to be taken seriously as an HPC option.
section 4.3.B
Biological material, having a copy
protection scheme provided by their
Creator, shall not be copied. Doing
so shall be a violation of this act,
punishable by fine, jail time, or an
eternity in the fiery pits of Hell.
The link to download the.NET SDK, which includes the.NET framework and the compiler, debugger and other tools is here.
Enjoy!
Re:Less Optimisation == Less CPU usage?!?
on
What is .NET?
·
· Score: 1
I believe that the article meant what you said - the less optimized JIT will run faster, but the code it makes wont....less memory and processor time... was refering to the compiler, not the code it compiled.
For some codes the combined time of fast-compile, slow-exe might be better than slow-compile, fast-exec, which is exactly why there are multiple JITs to choose from.
"I'd probably just tell him to buy the novel hardware. I bought a very nice Indigo2 for $400-odd a few months back, and it's a cooler experience to have the real equipment someplace"
How is this a solution to the problem he wants solved?
He wants to test his software on many different platforms (different OSs, different CPS, multi-cpu machines), and more importantly, he wants to test it on the CURRENT platforms his (potential) customers use.
How does buying one, 10 year old machine, in anyway approximate what he needs done?
You know, maybe he can just use the Commodore 64 and Apple II I have lying in my basement.
Hey, I really cannot understand your animosity towards the development of new languages. At the very worst, you can are free to bury your head in the sand, ignore their existance, and go on with your life. At the best, this might be the perfect tool for you to do your programming with.
Now, there are very good reasons why a programmer, even someone who will never in their career look at something other than C, benefits from this work.
Computer Science is a continually evolving field (thats why universites have CS departments, filled with people doing research in CS). Because some computer scientists study programming languages, programming languages are evolving as well. This means that researchers keep introducing new and different features into new languages.
Of course, the vast majority of these new languages never become popular (or ever get used for even a single real program), but this collection of ideas influences more "mainstream" language. Things like classes, type-safety, generics, etc., all began as research ideas and then migrated into production systems. (Of course, Eiffel is well beyond the research language phase).
So even if you never adopt a cutting edge language, eventually, a tool you use will exist, or have been made better, because of that language.
Point is, instead of bitching you should be appreciative.
I got a bunch of problems with this model. I'll mention them. Feel free to disagree.
I'm assuming that the binary must be free and freely distributable, otherwise, who would ever know about this project, and who, then, would donate money towards it. (Or, of course, this could have already been a commercial product that was not freely distributable, but that has a wide following.)
1) If a user does not care about every seeing the source code, he has no reason to pay for it, because again, he already has an unlimited right to use it as much as he wants.
2) Even if a user would like to see the source, he knows that it will one day be released, regardless of making a donation.
3) Even if a user would like to see the source as soon as possible, unless he can afford the entire ransom amount, he has no reason to believe that his donation will make the source released earlier: either not enough other people donate, so his donation is meaningless, or more than enough have donated, in which case his donation is unnecessary. (Do a google search on Kitty Genovese to see what I'm talking about).
Anyway, it doesn't seem like there is any reason for someone to donate, except for the same reasons they donate to OSS projects now. In fact, people might donate less, because nobody likes to pay "ransom" for anything.
In general, there appear to be two styles of masters degrees: those that are more research oriented, and those that are more professional oriented. Different schools offer different ones (some offer both).
Profession masters usually consist mostly of course work. Part of the courses will be a graduate level "redo" (the courses will be more indepth and expand on the knowledge you gained as an UG) of some of your undergrad work (usually a fixed curriculium), while the other courses will be more advanced, allowing you to study things you find more interesting.
A more research oriented masters is similar to the program above, but has a thesis project in addition to (or in substitution for) some of the courses. It is "independent" research, you will be working with a faculty advisor as part of his/her research group.
Usually research masters require you to be a full time student (and some even offer fellowships / assistanceships to help you financially), whereas many professional masters can be done while you are working. For example NYU offers their masters corses in the evening.
The choice between the two types of programs depends on what you would like to accomplish, and what your time and financial limitations are. Both will impress potential employeers. I'd give a slight edge to the research masters, because you will have something very interesting to discuss with interviewers, and if you present them with a copy of your thesis it will be impressive. Also, certain "research" type jobs might want to see proof that you could do research before they hire you.
If you do a research degree, you might be convinced to stay on (or continue somewhere else) and get a PhD (and, you'll have a better sense of what one is like), but it is definitly not a formal stepping-stone. Most PhD program will take people straight out of undergrad, but will require them to do some general course work and obtain a masters en-passant. Having a masters already might help reduce that course load, or at least make it easier.
Good luck.
For immediate release:
The International Society to Disprove the Moon Landings (ISDML) had recently determined that Christopher Columbus had never set foot in North America, and that any evidence presented by the Imperial Spanish Court of Ferdinand and Isabela was indeed a hoax.
There is no proof that Columbus, nor any of the men in his three vessels, had ever crossed the Atlantic and landed in North America. The ISDML believe that any evidence to the contrary was generated as part of an elaborate hoax orchestrated by the Spanish Government in an attempt to convince the world that they were the winners in the "Sea Race" versus their rival nation, Portugal. All evidence was fabricated at an elaboratly constructed studio in Seville, in a blatent attempt to deceive the public.
In fact, the ISDML has failed to find evidence that Europeans have ever reached North America, nor that this 'fabeled' contined does indeed exists.
More information will be fortcomming.
It seems you have two issues: having a managable build environment, and finding different compilers that agree on what c++ is.
There is an utility, CMake (do a search), which is a CrossPlatform make tool. You set up some high level specifications (which files belong to which object, etc.) and it generates the platform specific make files (or VisualStudio projects) automatically. I have used it a little bit, to develop the software for linux and windows, but don't know if it would meet all your needs.
As far as getting all your compilers (and headers, and libraries, etc.) to agree, the easiest solution would be to use the same compiler on each platform (gcc). To address some comments others have posted: for numerical applications running on Windows (at least the ones I compile), gcc by far outperforms VC7. It is a much more agressive optimizer, and has optimizations for P4 that VC does not yet have.
Given those arguments, I think some important questions to ask are a) Do you allow UGs to take grad classes? b)What are the opportunities to do research as an undergrad? c)(Especially if you might consider grad school)What percentage of your UGs go on to grad school, and where do they get accepted?
Good luck.
I'll agree that a clever programer might save a few instructions here or there, but I'll argue that in the age of RISC, and especially EPIC, instruction count does not have any effect on performance.
With a modern machine executing at 1Ghz, lets assume its throughput is close to 1 billion (10^9, I think these things are different in England) instructions per second.
So for any normal application (everything except weapon guidance, etc.) that runs for a few minutes, even if you can save 100 million (dynamic) instructions, you are not going to even notice. And just imagine how hard it is to eliminate 100 M dynamic instructions for a real, non trivial, program.
For IA-64, we expect a lot of performance to come from the fact that it can execute many instructions in parallel (thats what Intel is betting on).
It is much easier for a machine to find ILP, than for a human.
And I'm not claiming that there will not be a few cases where a programmer could write better assembly than the compiler, but that even an expert assembly programmer will get beat 99 out of 100 (at least) for IS-64.
As an aside, reorganizing data structures (usually to take advantage of the memory hiearchy) is a very hot research topic right now. Reorganizing algorithms, i.e. loop tiling, etc., has been studied for about 10 years, and is finally beginning to make its way into commercial compilers.
It was easier to beat a compiler when it was just doing register allocation for 4 GP registers. Now, as the compilers are getting more and more advanced, it is much much harder to do better than them.
Well, they days of hand crafted assembly, except for a few special purposes, have long since past. And no one expects assembly writers to be competitive with the compiler's ability to discover and explot ILP.
But the example you mention won't actually cause assembly writers any problems: the code won't be tied to a specific version of EPIC.
The IA-64 assembly contains so-called "stop bits", which specify that the instruction(s) following the bit cannot be run in parallel with those before the bit.
Those bits have nothing to do with the actual number of instructions that the machine is capable of handling.
For example, if a program consisted of 100 independent instructions, the assembly would not contain any stop bits. Now the actual machine implementation might only handle 2 or 4 or 8 instructions at a time, but that does not appear anywhere in the assembly. The only requirement is that the machine respect the stop bits.
Now, you might question how it deals with load-value dependencies (ie. load a value into a register, use that register). Obviously, the load and use must be on different sides of a stop bit, but that would still not guarantee correctness. I'm not sure how IA64 actually works (and someone should reply with the real answer) but I imagine that either: a) loads have a fixed max latency, and the compiler is required to insert as many stop bits between the load and the use to ensure correctness, or b) the machine will stall (like current machines).
Either way, the whole point of speculative loads is to avoid that being a problem.
Dude, you are making a logical fallacy.
If A implies B (ie. if something is secret then it is proprietary) does not mean B implies A (if it is proprietary then it is secret). It also does not mean ~A imples ~B (if it is not secret then it is not proprietary).
Secrecy has nothing to do with proprietaryness: the whole point of the patent system is to have proprietary techniques open for all to read.
Condor is a software system being developed as part of a research project at an university, just like thousands of others.
The CMU thingy is a consortium, i.e. an agreement for a whole bunch of people/entities to work together. Assumably, they will organize conferences and workshops, hand out grant money, to encourage work in this area.
The two are entierly different.
I don't understand the title of this article. What's "secret" about this?
Propriatary, yes, and perhaps it's wrong for the gov. to turn our tax money into a Microsoft product (but of course, the government gives billions in tax rebates, subsidised loans, etc. to EVERY american business), but there is definitly nothing secret about this.
Stop the FUD!
I install VMWare on my OS
I install an OS in that VMWare
I install VMWare on that OS
I install an OS in that VMWare
I install VMWare on that OS
I install an OS in that VMWare
Its like looking into a mirror...
Hey. Just a couple of days I donated $20 to the EFF (grad student budget constraints).
:CueCats, all donated $20 to the EFF, or other organizations, suddenly we might be able to buy some justice as well.
I'll tell you something, laws can be bought ("donations" to lesiglators), and court cases can be bought (better lawyers cost more). It seems like big business, etc., always win these things, but the reason is because they have the money to do the buying.
If us, the regular people, those who want to own what we pay for, who want the right to watch our DVDs with the player we choose, to save our e-books on to a different medium, to uninstall parts of the operating system that we don't want, to take apart our
So forego a couple of extra beers, a couple of rounds of pool, StarWars tickets, etc. and dontate a couple of bucks. Maybe then we can see a difference.
Just an idea.
Are you joking around, or are you being a real schmuck? Let me tell you something, don't start insulting people when you don't know the first thing you are talking about.
dll is short-hand for the doubly-linked-list you mentioned yourself, not some Microsoft abreviation for a dynamically linked library.
Now imagine you had two elements in a list, A and B. A points to B, and B points to null. Figure out how you can reverse that list. Now extend to the general case.
The system of laws you describe is very naive.
The problem is, that once someone's rights have been infringed, it may be too late for them to have their rights restored.
To take the easiest example, look at your gun control "wants" - people "should be allowed to buy a gun", but nobody should be "allowed to shoot you". Once you have been shot (and killed), it is imposible for your right to life to be restored. Although we can punish the killer for infringing your right, it does not matter to you.
Now, because we value the right to life more than the right to own a gun (well, I sure hope so), we have preventative laws: laws that infringed some peoples' rights with the hope that they protect the rights (or more important rights) of others.
Of course, my argument is not limited to just gun control.
A libretarian system requires people to defend their own rights. Unfortunatly, a person's (or business') ability to defend his rights is limited by its size/wealth/power. Far from being fair and free, a libretarian system becomes one where the wealthy/powerful have all the freedoms, and the average person has no way to defend or exercise their "rights"
Right. I agree with you.
I'm very glad to see all the mainstream press that this proposed legislation is getting.
Hopefully, as more and more editorials criticize this law, the general public will begin to see what is at stake and demand that Congress abandon this Disney law.
It is not the role of the government to protect the revenue streams of industry; but somewhere and somehow this has become their sole occupation. In a democratic free-market, the government should ensure fairness (I'm not a libertarian, I have no belief in an entierly market-based system) - unfortunatly in our system the government seems only concerned with appeasing the largest corporations, with no regard for the people they are presumed to serve.
If we all stand up, and let our politicians know that "enough is enough" hopefully they will change their ways. And it seems like more and more "everyday" people are beginning to make their voice heard (witness protests in Seattle, etc.), but the corporate media does its very best to quiet this dissent.
Unfortunatly the American idea of freedom has been transformed, and what remains is solely a concern with the freedom to make money.
I can't imagine how someone can tell me I can't give something that I made away for free, but that I can sell it.
I was wondering if AMD has released a reference to the ISA for the Hammer architecture, because without knowing what it looks like, I have many, many questions.
For instance, will the hammer have a modern ISA, like the IA-64, i.e. general purpose registers, speculative execution, predicate bit, VLIW, or will it be an extension of the current x86 ISA,
If its the former, with x86 to Hammer translation at the instruction decode phase, AMD will be offering a useful solution: run your current apps now, and slowly replace them with the new version of them.
If its the latter, where the chip is just a 64-bit extension to the x86, it doesn't seem like they are offering much, just "hey, I have a 64bit CPU" bragging rights and can address more memory.
In either case, Linux users won't really gain much from supporting the old ISA: they'll choose the fastest hardware and type 'make'.
You should check out the AC3 project at Cornell University's Theory Center, which is "home to the largest Windows-based high-performance cluster complex in the world".
There are numerous machines, such as the 256 CPU Veclocity 1, that run MPI-Pro over MyraNet(?), that was one of the 500 fastest computers.
Windows is a very viable and high performance solution for running scientific parallel application, and you should order the $8.00 evaluation kit from MS and check it out for yourself.
I've developed for some of these systems, and have been very impressed. I've worked with Linux clusters too, but only on older, weaker machines, so it would not be fair to compare the two.
(Btw. all opinions here are my own, and in no way should be construed as those of Cornell or the TC).
One thing you might want to consider is administration time, scientists, who are already annoyed that programming destracts them from their real work, might not want to devote the time and effort to learn to and administrate all those linux boxes.
Anyway, if the MS rep is very eager, he might offer you some great deals. MS is very eager to be taken seriously as an HPC option.
I've never used it, but I've heard about code surfer from GrammaTech.
Is commercial software though.
I'm pretty sure this is illegal under the DMCA:
section 4.3.B
Biological material, having a copy
protection scheme provided by their
Creator, shall not be copied. Doing
so shall be a violation of this act,
punishable by fine, jail time, or an
eternity in the fiery pits of Hell.
The link to download the .NET SDK, which includes the .NET framework and the compiler, debugger and other tools is here.
Enjoy!
I believe that the article meant what you said - the less optimized JIT will run faster, but the code it makes wont. ...less memory and processor time ... was refering to the compiler, not the code it compiled.
For some codes the combined time of fast-compile, slow-exe might be better than slow-compile, fast-exec, which is exactly why there are multiple JITs to choose from.