Heavy use of False sharing (packed structures with independent member variables accessed by multiple cores) is a huge performance penalty on multicore. It's best to separate the variables or to shadow them on a per core (i.e. per thread / TLS) basis if possible to get the highest performance.
Also, if you access shared control variables, with atomic operations (compare-exchange / load-and-reserve + store-conditional), you can avoid undue cache cross talk (updates and invalidates) between the CPUs.
the relationship to other cores and to memory aren't fully 'cross-bar'
In AMD multicore processors and the latest i7 Intel chips with integrated memory (rather than a shared FSB), the system memory is "stacked to the processor" already (one bank of memory per physical chip). You just need to make sure that your working set per core is allocated from the memory that is directly connected to the CPU the you are working on.
FWIW, Windows already has a solution for this. You run each thread on a core with a set processor affinity so it doesn't get swapped around. Then you perform your memory management with NUMA allocations so your working set comes from the memory directly connected to your core.
You will have some memory that is "shared" for communication and other uses but as long as your primary working set is directly attached to your CPU, all should be roughly equivalent to the "stacked memory" custom supercomputer architectures mentioned in the article.
I'm sure that other OS's support NUMA allocation as well.
FWIW, you can further increase performance by "chunking" data into segments that will fit into L1 for inner loops if possible so that multiple cores in a single die don't compete for L2/L3 and Memory Bus bandwidth as often.
Finally, avoid having shared/overlapped data between multiple cores. Especially for "false sharing" which is two separate data elements which are not actually shared but are co-located in the same cache line such that independent accesses to them cause cache updates/invalidations.
Heat pipes are still "liquid cooled" even if there are no moving parts. The heat being disappated actually provides the energy to circulate the fluid in a heat pipe.
Also, this looks like a realistic patent since it relies on a large aluminum block as the case for a heatsink which is the exact description of the newest macbooks which are machined from a single block of aluminum.
Komodo firewall has technology to only allow white-listed EXE's to run in a "paranoid" mode. It means you have to manually "approve" newly installed programs and updates (or go into installation mode during the update) but it works pretty well.
While beginning teachers make 32K-48K in IL, a teacher with a masters and continuing ed have a median income of $65K. However, individual districts (i.e. rich ones like the NW burbs of Chicago) pay considerably more - with many possibilities near or above $100K for teachers with experience and higher degrees. FWIW, I personally know teachers in the surrounding school districts that are making incomes around the 6-figure range.
Find me a single "conservative" politician who will vote to kill Medicare and Medicaid. Or to eliminate the socialist pyramid scheme of Social Security.
There isn't one because they all know old people are a huge voting block and they'd be out of office faster than they could blink.
You forgot all the administrators making several hundred thousand each plus additional staff, plus building facilities and utility expenses, plus supplies, plus budgets for sports and extra-curriculars, etc. The cost of a student is much more than (Teacher_Salary / 30). Plus $50K is not that much for a teacher anyhow.
I know several teachers in my area and a teacher with a master's degree and several years of experience can pull in close to six figures - plus 3 month's summer vacation and a retirement plan. Now the same teacher in Chicago Public would make only about 1/2 what they make in the burbs. Due to the way schools are funded by local taxes, the schools in better suburbs pay the teachers better salaries.
Vector and Atomic operations are provided as instrinsics on most modern C compilers. They are still CPU specific (i.e. x86 has cmpxchg while PPC has lwarx/stwcx). However, they usually compile into a single (or very few) assembler operations per intrinsic. The theoretical benefit of intrinsics is that the compiler can reorder and optimize them much more easily than inline asm.
All the problems listed in the GP were caused by Bush over 8 years. If a mere 8 years of Bush is enough to completely destroy the US forever, we don't deserve to remain as a world "superpower".
Barack Obama can merely guide us on taking the correct steps to undo the Bush era but my guess is it would take 20-30 years of fiscal responsibility to undo the 6-7 trillion of debt from Bush alone.
There are some other complications. For example, you probably want to modify your dithering algorithm so that it's possible to heuristically swap adjacent "pixels" that changed by error diffusion to make longer contiguous horizontal blocks while still minimizing diffusion propagation (this may mean diffusing error in multiple directions or modifying diffusion propagation weightings).
After that, you don't want to simply combine horizontally adjacent blocks if you want your final LEGO creation to be "solid" - i.e. have good interconnectivity. An example of a really bad image would be the NTSC test signal vertical bars, if you built that, you would have large vertical columns that could be separated. Basically, you'd want to insure a minimal overlap of the horizaontal brick gap between adjacent rows if "solidity" was one of your goals as well.
Organic images which allow for noise introduced by the diffusion dithering also work well for avoiding hard vertical lines that decrease the strength and stability or "solidness" of the final product.
Sure you can boot Vista (32-bit) with only 4 GB of RAM but the problem is using it. Most Vista Systems will only *REPORT* seeing 3GB (or sometimes 3.5GB) even though you have 4GB installed. That last GB is wasted:-(
Yea, because of course, we don't want to make people spend more than five minutes doing something as inconsequential as choosing who gets to be the most powerful man on the planet.
That's not what I was saying at all.
Time is precious and most people aren't going to spend an hour reading a single webpage. I basically said to turn the Web Page into something quickly readable -- like a 5-minute Executive Summary. Then have the detailed plans available for download.
Imagine if you were interested in building a new house and the architect gave you a written proposal that included all the local ordinances for plumbing / electrical wiring / et cetera inline with the description of what he was going to try to achieve. Or if his vision statement of a green rooftop with solar panels was interspersed with all the building codes and the number of applicable permits required for the installation.
Wouldn't you prefer that he give you a clean vision statement and then have an addendum with the code compliance details. You might be interested in all the excruciating permit details but it'd be easier to sell your wife on the vision if she could skip the extra hour of tedious reading -- especially if the boring minutia were technical enough she would have trouble understanding it anyhow.
If anybody bothered to read the diff, it is obvious that the page was re-written to improve accessibility, so that more voters can understand the issues. Long paragraphs were shortened.
The original page is a huge amount of text -- 5462 words on the page. This is like "War and Peace" for a web page. The new version only has 3319 words on the page and the text has been simplified.
The average person reads around 200-250 WPM for fifth grade reading material. For technically detailed information (the earlier version of the webpage), the rate can drop to 70-80 words per minute.
The first version had a large number of technical details and was extremely long. Assuming a generous 100 WPM for non-technical readers, it would have taken nearly an hour (54 minutes) to read. The new version is much less wordy and the technical details have been simplified a bit so if we assume a faster reading speed of at least 200 WPM, it will still take most people over 15 minutes to read.
What Obama really should do is make the web page smaller still - to the 5 minutes-to-read range and then have an extended document like the original page that you can download to read over an hour or two if you want the technical details.
I disagree -- this is definitely Technology as well as Art. There's no reason it has to be only one or the other. Besides, the ancient Greeks felt all technology was art. The word "technology" itself comes from the Greek root "techne" which means art or skill.
Not all technology is computers and transistors. Technology has existed and improved throughout the ages, from the ability to make fire and work with tools to the creation of the wheel. Clocks and geared mechanisms certainly make for interesting technology from large computers such as Babbage's Difference Engine to portable devices such as the Antikythera mechanism.
It would be possible to even have "modern" technology without transistors although perhaps it wouldn't be the same as the high tech steam powered science of the Steampunk Genre.
But many auxiliary bones were also used to supplement movements such as the twisting of knees, elbows, legs and arms. These were not activated by animation data. Rather, they were linked to the values of the basic joints that were activated by animation.
We are doing something similar in MK vs DC Universe. Our Superheroes, Villians, and Kombatants have muscles that flex and move based on the position of other joints. This is done in Maya through "Set Driven Keys" and implemented in the game through a custom-runtime. It cuts down on the animation data required for an extremely large skeleton and it looks much more natural (biceps flex when arm bends). It's a win in both the memory footprint and visuals.
The cost comes with processing time and developer time for the implementation. The Maya rule set is in rotation angles and linear offsets. There is a conversion cost for going back and forth between the angular coordinate systems of quaternion (stored), matrix (render), and Euler (muscle system) spaces. There are weird Euler Angle rules for dealing with issues like singularities and major axis inversion make it a bit of a pain to implement if you store your data as (compressed) quaternions.
This is a really good reason why they should NOT be using their private email.
Security concerns aside, wouldn't the fact that it's illegal to use their private e-mail for gov't business be reason enough not to do so?
The whole issue with politicians using private e-mail has already been a big deal with the Bush administration using private e-mail for gov't purposes... like when Rove was communicating "off the record" with Jack Abramoff.
Well, gas prices go up really fast on speculation. Or did anyone else in the US not notice how fast gas prices went up when Ike went through.
The oil/gas markets are changing more on what people think will happen then what actually does happen.
Actually, this only seems to happen quickly when the prices go up. When they announce a new high for oil that is $10 a barrel more than the day before, the price of gas goes up 10-20% overnight.
When they have a $50 drop in the price of oil (like we've had from around $140 per barrel to $90 per barrel), the price of gas will still take months to slowly come down.
On May 17, 2005, Sony Computer Entertainment confirmed some specifications of the Cell processor that would be shipping in the forthcoming PlayStation 3 console.[17][18][19] This Cell configuration will have one Power processing element (PPE) on the core, with eight physical SPEs in silicon.[19] In the PlayStation 3, one SPE is locked-out during the test process, a practice which helps to improve manufacturing yields, and another one is reserved for the OS, leaving 6 free SPEs to be used by games' code.[20]
The site still looks like a link farm. And every page basically has paid links on it that just repeat the search terms he was paying Google to buy. There's no reason Google should sell him search terms cheaper than they pay him for click throughs on the same search terms.
Probably the part that got him in trouble was e-mailing this same 16-page report to 37 students on how to compromise the system before the system was secured. There's the harm and thus the foul.
From The Summary: The business centers around providing links for business that sell industrial products.
The summary is wrong it should say "AdSense Links".
Basically, he was skimming from Google. He was paying google less for search terms than Google was paying him for click throughs. If you typed "ball bearings" on Google you might get one of his adwords (that he paid 5-6 cents for), then clicked on one of his "ball bearing" you'd be clicking on a Google AdSense ad (that he was paid 10cents per click through). He was making a huge amount of money by making people click twice through what Google would prefer to be a single click from their system. Plus his entire business model relied on skimming cash from Google.
Don't they run a USB watcher iPodService.exe as a OS service (as SYSTEM user) that hooks into the USB device chain in order to watch the USB ports for when an iPod is inserted. They also run a daemon iTunesHelper.exe that runs iTunes when the iPodService detects an iPod.
Heavy use of False sharing (packed structures with independent member variables accessed by multiple cores) is a huge performance penalty on multicore. It's best to separate the variables or to shadow them on a per core (i.e. per thread / TLS) basis if possible to get the highest performance.
Also, if you access shared control variables, with atomic operations (compare-exchange / load-and-reserve + store-conditional), you can avoid undue cache cross talk (updates and invalidates) between the CPUs.
the relationship to other cores and to memory aren't fully 'cross-bar'
In AMD multicore processors and the latest i7 Intel chips with integrated memory (rather than a shared FSB), the system memory is "stacked to the processor" already (one bank of memory per physical chip). You just need to make sure that your working set per core is allocated from the memory that is directly connected to the CPU the you are working on.
FWIW, Windows already has a solution for this. You run each thread on a core with a set processor affinity so it doesn't get swapped around. Then you perform your memory management with NUMA allocations so your working set comes from the memory directly connected to your core.
You will have some memory that is "shared" for communication and other uses but as long as your primary working set is directly attached to your CPU, all should be roughly equivalent to the "stacked memory" custom supercomputer architectures mentioned in the article.
I'm sure that other OS's support NUMA allocation as well.
FWIW, you can further increase performance by "chunking" data into segments that will fit into L1 for inner loops if possible so that multiple cores in a single die don't compete for L2/L3 and Memory Bus bandwidth as often.
Finally, avoid having shared/overlapped data between multiple cores. Especially for "false sharing" which is two separate data elements which are not actually shared but are co-located in the same cache line such that independent accesses to them cause cache updates/invalidations.
Heat pipes are still "liquid cooled" even if there are no moving parts. The heat being disappated actually provides the energy to circulate the fluid in a heat pipe.
Also, this looks like a realistic patent since it relies on a large aluminum block as the case for a heatsink which is the exact description of the newest macbooks which are machined from a single block of aluminum.
Komodo firewall has technology to only allow white-listed EXE's to run in a "paranoid" mode. It means you have to manually "approve" newly installed programs and updates (or go into installation mode during the update) but it works pretty well.
While beginning teachers make 32K-48K in IL, a teacher with a masters and continuing ed have a median income of $65K. However, individual districts (i.e. rich ones like the NW burbs of Chicago) pay considerably more - with many possibilities near or above $100K for teachers with experience and higher degrees. FWIW, I personally know teachers in the surrounding school districts that are making incomes around the 6-figure range.
Look here for detailed info.
Find me a single "conservative" politician who will vote to kill Medicare and Medicaid. Or to eliminate the socialist pyramid scheme of Social Security.
There isn't one because they all know old people are a huge voting block and they'd be out of office faster than they could blink.
You forgot all the administrators making several hundred thousand each plus additional staff, plus building facilities and utility expenses, plus supplies, plus budgets for sports and extra-curriculars, etc. The cost of a student is much more than (Teacher_Salary / 30). Plus $50K is not that much for a teacher anyhow.
I know several teachers in my area and a teacher with a master's degree and several years of experience can pull in close to six figures - plus 3 month's summer vacation and a retirement plan. Now the same teacher in Chicago Public would make only about 1/2 what they make in the burbs. Due to the way schools are funded by local taxes, the schools in better suburbs pay the teachers better salaries.
Vector and Atomic operations are provided as instrinsics on most modern C compilers. They are still CPU specific (i.e. x86 has cmpxchg while PPC has lwarx/stwcx). However, they usually compile into a single (or very few) assembler operations per intrinsic. The theoretical benefit of intrinsics is that the compiler can reorder and optimize them much more easily than inline asm.
Microsoft would do well to change that perception unless they want to be known for the TWO biggest software disasters in the 21st century.
Too Late:
All the problems listed in the GP were caused by Bush over 8 years. If a mere 8 years of Bush is enough to completely destroy the US forever, we don't deserve to remain as a world "superpower".
Barack Obama can merely guide us on taking the correct steps to undo the Bush era but my guess is it would take 20-30 years of fiscal responsibility to undo the 6-7 trillion of debt from Bush alone.
There are some other complications. For example, you probably want to modify your dithering algorithm so that it's possible to heuristically swap adjacent "pixels" that changed by error diffusion to make longer contiguous horizontal blocks while still minimizing diffusion propagation (this may mean diffusing error in multiple directions or modifying diffusion propagation weightings).
After that, you don't want to simply combine horizontally adjacent blocks if you want your final LEGO creation to be "solid" - i.e. have good interconnectivity. An example of a really bad image would be the NTSC test signal vertical bars, if you built that, you would have large vertical columns that could be separated. Basically, you'd want to insure a minimal overlap of the horizaontal brick gap between adjacent rows if "solidity" was one of your goals as well.
Organic images which allow for noise introduced by the diffusion dithering also work well for avoiding hard vertical lines that decrease the strength and stability or "solidness" of the final product.
You can boot Vista with only 4 Gigs of ram?
Sure you can boot Vista (32-bit) with only 4 GB of RAM but the problem is using it. Most Vista Systems will only *REPORT* seeing 3GB (or sometimes 3.5GB) even though you have 4GB installed. That last GB is wasted :-(
I always liked:
>make love
Error: Do not know how to make love. Stop.
Yea, because of course, we don't want to make people spend more than five minutes doing something as inconsequential as choosing who gets to be the most powerful man on the planet.
That's not what I was saying at all.
Time is precious and most people aren't going to spend an hour reading a single webpage. I basically said to turn the Web Page into something quickly readable -- like a 5-minute Executive Summary. Then have the detailed plans available for download.
Imagine if you were interested in building a new house and the architect gave you a written proposal that included all the local ordinances for plumbing / electrical wiring / et cetera inline with the description of what he was going to try to achieve. Or if his vision statement of a green rooftop with solar panels was interspersed with all the building codes and the number of applicable permits required for the installation.
Wouldn't you prefer that he give you a clean vision statement and then have an addendum with the code compliance details. You might be interested in all the excruciating permit details but it'd be easier to sell your wife on the vision if she could skip the extra hour of tedious reading -- especially if the boring minutia were technical enough she would have trouble understanding it anyhow.
If anybody bothered to read the diff, it is obvious that the page was re-written to improve accessibility, so that more voters can understand the issues. Long paragraphs were shortened.
The original page is a huge amount of text -- 5462 words on the page. This is like "War and Peace" for a web page. The new version only has 3319 words on the page and the text has been simplified.
The average person reads around 200-250 WPM for fifth grade reading material. For technically detailed information (the earlier version of the webpage), the rate can drop to 70-80 words per minute.
The first version had a large number of technical details and was extremely long. Assuming a generous 100 WPM for non-technical readers, it would have taken nearly an hour (54 minutes) to read. The new version is much less wordy and the technical details have been simplified a bit so if we assume a faster reading speed of at least 200 WPM, it will still take most people over 15 minutes to read.
What Obama really should do is make the web page smaller still - to the 5 minutes-to-read range and then have an extended document like the original page that you can download to read over an hour or two if you want the technical details.
Who tagged this "technology"? This is 100% art.
I disagree -- this is definitely Technology as well as Art. There's no reason it has to be only one or the other. Besides, the ancient Greeks felt all technology was art. The word "technology" itself comes from the Greek root "techne" which means art or skill.
Not all technology is computers and transistors. Technology has existed and improved throughout the ages, from the ability to make fire and work with tools to the creation of the wheel. Clocks and geared mechanisms certainly make for interesting technology from large computers such as Babbage's Difference Engine to portable devices such as the Antikythera mechanism.
It would be possible to even have "modern" technology without transistors although perhaps it wouldn't be the same as the high tech steam powered science of the Steampunk Genre.
Republicans are cowards.
Not necessarily. However, they are willing to give up freedoms for security and social stability is more important protections of minorities.
TED had a very good talk about psychology of left vs. right without necessarily putting down one or the other.
Basically, what they found out was that Liberals have two main axes of morality: Harm and Fairness.
Conservatives have five: Harm, Fairness, In-Group, Authority, Purity.
But many auxiliary bones were also used to supplement movements such as the twisting of knees, elbows, legs and arms. These were not activated by animation data. Rather, they were linked to the values of the basic joints that were activated by animation.
We are doing something similar in MK vs DC Universe. Our Superheroes, Villians, and Kombatants have muscles that flex and move based on the position of other joints. This is done in Maya through "Set Driven Keys" and implemented in the game through a custom-runtime. It cuts down on the animation data required for an extremely large skeleton and it looks much more natural (biceps flex when arm bends). It's a win in both the memory footprint and visuals.
The cost comes with processing time and developer time for the implementation. The Maya rule set is in rotation angles and linear offsets. There is a conversion cost for going back and forth between the angular coordinate systems of quaternion (stored), matrix (render), and Euler (muscle system) spaces. There are weird Euler Angle rules for dealing with issues like singularities and major axis inversion make it a bit of a pain to implement if you store your data as (compressed) quaternions.
This is a really good reason why they should NOT be using their private email.
Security concerns aside, wouldn't the fact that it's illegal to use their private e-mail for gov't business be reason enough not to do so?
The whole issue with politicians using private e-mail has already been a big deal with the Bush administration using private e-mail for gov't purposes... like when Rove was communicating "off the record" with Jack Abramoff.
Well, gas prices go up really fast on speculation. Or did anyone else in the US not notice how fast gas prices went up when Ike went through.
The oil/gas markets are changing more on what people think will happen then what actually does happen.
Actually, this only seems to happen quickly when the prices go up. When they announce a new high for oil that is $10 a barrel more than the day before, the price of gas goes up 10-20% overnight.
When they have a $50 drop in the price of oil (like we've had from around $140 per barrel to $90 per barrel), the price of gas will still take months to slowly come down.
I think they're really making 8-core chips but their factories are primitive so normally only about six of them work.
You're confusing them with IBM and Sony.
On May 17, 2005, Sony Computer Entertainment confirmed some specifications of the Cell processor that would be shipping in the forthcoming PlayStation 3 console.[17][18][19] This Cell configuration will have one Power processing element (PPE) on the core, with eight physical SPEs in silicon.[19] In the PlayStation 3, one SPE is locked-out during the test process, a practice which helps to improve manufacturing yields, and another one is reserved for the OS, leaving 6 free SPEs to be used by games' code.[20]
The site still looks like a link farm. And every page basically has paid links on it that just repeat the search terms he was paying Google to buy. There's no reason Google should sell him search terms cheaper than they pay him for click throughs on the same search terms.
No harm, no foul.
Probably the part that got him in trouble was e-mailing this same 16-page report to 37 students on how to compromise the system before the system was secured. There's the harm and thus the foul.
His website relied on being a link-farm.
From The Summary: The business centers around providing links for business that sell industrial products.
The summary is wrong it should say "AdSense Links".
Basically, he was skimming from Google. He was paying google less for search terms than Google was paying him for click throughs. If you typed "ball bearings" on Google you might get one of his adwords (that he paid 5-6 cents for), then clicked on one of his "ball bearing" you'd be clicking on a Google AdSense ad (that he was paid 10cents per click through). He was making a huge amount of money by making people click twice through what Google would prefer to be a single click from their system. Plus his entire business model relied on skimming cash from Google.
Don't they run a USB watcher iPodService.exe as a OS service (as SYSTEM user) that hooks into the USB device chain in order to watch the USB ports for when an iPod is inserted. They also run a daemon iTunesHelper.exe that runs iTunes when the iPodService detects an iPod.