Yesterday at the office one coworker showed me a news, and suddenly I started laughing. It wasn't a simple laughter. It was a laugh attack, the kind that leaves us breathless, like the ones that puts tears on our eyes.
To explain why this happened I need to fill you with some background information. Without it, this isn't funny at all. Some time ago Nvidia purchased the Ageia Physx technology that allows to develop hardware specialized in calculating physics model data. It used that technology to bulti it in their video cards.
While this technology was developed to assist in the processing of game data, soon it became clear that there was another area where it could help a lot. So Nvidia developed a new series of drivers called CUDA, allowing people to use that technology and the massive paralel processing power of modern video cards to process scientific information. This added a lot of power to the distributed computing systems.
The news my coworker showed me yesterday commented that they were developing a technology to use the extra processors of multiple core chips to process graphics.
Think about it. Let it sink in. Why would a processor need to process the graphical data? Because the video card is executing the processor processes. When I thought that, I just couldn't stop myself from laughing.
Of course, that's not the real reason why this technology is being developed. Some talk with my friends and some later thinking showed me at least two other reasons why this could be useful.
One: lower power video cards, as the ones found in office computers and some laptops. In this case, an alternative to this card using one of the cores of multiple core processors some of this machines are equiped with might prove interesting.
Two: even more interesting. Windows XP doesn't have DX10, but if one can emulate DX10 in one of the cores and let the video card use that DX10, it might be that the speed advantage of Windows XP over Vista could help to run DX10 games at a decent speed in a XP box.
Of course, a part of me is still laughing while I write this, and another part insists in making me say that this type of trickery wouldn't be necessary if DX10 were open source technology. In this case one would be able to simply port the packages from one Operating System to another.
Showing posts with label Hardware. Show all posts
Showing posts with label Hardware. Show all posts
Saturday, December 13, 2008
Wednesday, December 3, 2008
Consequences of open software and hardware
Maybe some of you believe I'm some kind of blind fanatic , and that's not true. I recognize when a closed program has details that I like (my friends have seen me praising some little details I like about Vista). Nontheless, I can't stop seeing along the things I like those other things I dislike and I can't change because it's closed software. That lack of freedom is the main reason why I keep on writing about open stuff, things that give us the freedom to change them the way we want. There I see the future.
Let's start this article after the necessary introduction. A little time ago, I wrote about Open Hardware. You'll recall there was a special mention to the Arduinos, because there were a lot of them and I didn't want you thinking there were the only things in that page.
Today something surprised me in a pleasant way, and it was related to those Arduinos. I found a webpage called diydrones (Do It Yourself Drones) which basically deals with unmanned vehicles we can build ourselves, in a reduced scale.
There you'll find a lot of different projects with different types of hardware, but there are two that receive special care in the site: ArduPilot and BlimpDuino. I think you'll understand why those names rise some special emotions in me.
BlimDuino is in development stage, soon it will be released, with kits for sale, and release of the arduino hardware modifications back to the comunnity. ArduPilot is already on production, with kits on sale and open hardware released.
What are this two projects for? ArduPilot is a authomatic pilot for miniature planes which handles navigation by GPS, control of the ruder (direction) and throttle (altitude by speed control). There's more coming through, a new version is being developed, called ArduPilot Pro, and this one will also control ailerons.
BlimpDuino is just fabulous. It's a control for blimps (small dirigibles, or small airships, as you prefer). There's a demo video of a blimp being indirectly controled with infrared markers in the room. In the video you can see the way the motors tilt to gain or loose altitude, how it makes them turn in one direction to gain speed and in other to loose it, how it uses them to turn. It's wonderful to think how little it takes for this blimp to take it's own decisions based on the situations we put it through.
I don't know if this is havving any effects on you, but after seeing this I've gained a lot of respect for the Arduino platform and it's possibilities. Besides, I can't stop noticing what can be achieved with open hardware and software and inventiveness. Don't you see a small scale glimpse of the future in this developments?
Let's start this article after the necessary introduction. A little time ago, I wrote about Open Hardware. You'll recall there was a special mention to the Arduinos, because there were a lot of them and I didn't want you thinking there were the only things in that page.
Today something surprised me in a pleasant way, and it was related to those Arduinos. I found a webpage called diydrones (Do It Yourself Drones) which basically deals with unmanned vehicles we can build ourselves, in a reduced scale.
There you'll find a lot of different projects with different types of hardware, but there are two that receive special care in the site: ArduPilot and BlimpDuino. I think you'll understand why those names rise some special emotions in me.
BlimDuino is in development stage, soon it will be released, with kits for sale, and release of the arduino hardware modifications back to the comunnity. ArduPilot is already on production, with kits on sale and open hardware released.
What are this two projects for? ArduPilot is a authomatic pilot for miniature planes which handles navigation by GPS, control of the ruder (direction) and throttle (altitude by speed control). There's more coming through, a new version is being developed, called ArduPilot Pro, and this one will also control ailerons.
BlimpDuino is just fabulous. It's a control for blimps (small dirigibles, or small airships, as you prefer). There's a demo video of a blimp being indirectly controled with infrared markers in the room. In the video you can see the way the motors tilt to gain or loose altitude, how it makes them turn in one direction to gain speed and in other to loose it, how it uses them to turn. It's wonderful to think how little it takes for this blimp to take it's own decisions based on the situations we put it through.
I don't know if this is havving any effects on you, but after seeing this I've gained a lot of respect for the Arduino platform and it's possibilities. Besides, I can't stop noticing what can be achieved with open hardware and software and inventiveness. Don't you see a small scale glimpse of the future in this developments?
Sunday, November 30, 2008
Open Hardware
Since I remember there have been free access electronic circuits, I remember electronic magazines including several projects each issue. But lately this trend has gone further.
Internet has given normal people the capacity to put things so that others can check them, so when applied to electronics we find a clear improvement: we are not limited to the things we can put in a magazine, neither are we limited in the level of knowledge needed to use the electronics, as usually are the magazines that are intended for a certain audience.
So new ways of distribution of knowledge are opened as a lot of circuits more or less completed, more or less complicated, are published with freedom in mind, with the freedom to use them for whatever we want (indeed, several of this projects allow even commercial applications).
Thus it's born the category known as Open Hardware projects. It's a step beyond of the Open Software concept. Here communities are born around the use, modification, improvement and redesign of advanced circuitry. There are several sorts of circuits, ranging from general purpose to ultra specialized, from a big majority of exposed circuits to a full fledged modern cellphone.
I'm a programmer, so I admit I only made baby steps into electronics, that's why I can't do anything but admire this marvelous things we are freely offered. We are given the freedom of buying them, of buying components and building them. We also have the freedom of developing from them and, if we want, we can release our modifications to the community, thus making bigger the list of Open Hardware devices and their capabilities.
A little advice: the page where I dicovered this is ordered by alphabetical order, so you'll see a lot of Arduino devices first. Don't worry, there are a lot more things below.
Internet has given normal people the capacity to put things so that others can check them, so when applied to electronics we find a clear improvement: we are not limited to the things we can put in a magazine, neither are we limited in the level of knowledge needed to use the electronics, as usually are the magazines that are intended for a certain audience.
So new ways of distribution of knowledge are opened as a lot of circuits more or less completed, more or less complicated, are published with freedom in mind, with the freedom to use them for whatever we want (indeed, several of this projects allow even commercial applications).
Thus it's born the category known as Open Hardware projects. It's a step beyond of the Open Software concept. Here communities are born around the use, modification, improvement and redesign of advanced circuitry. There are several sorts of circuits, ranging from general purpose to ultra specialized, from a big majority of exposed circuits to a full fledged modern cellphone.
I'm a programmer, so I admit I only made baby steps into electronics, that's why I can't do anything but admire this marvelous things we are freely offered. We are given the freedom of buying them, of buying components and building them. We also have the freedom of developing from them and, if we want, we can release our modifications to the community, thus making bigger the list of Open Hardware devices and their capabilities.
A little advice: the page where I dicovered this is ordered by alphabetical order, so you'll see a lot of Arduino devices first. Don't worry, there are a lot more things below.
Wednesday, November 26, 2008
A theory about "old" Part I : Hardware
I know a lot of people that are always running behind the latest piece of hardware and trying to play the latest game that just got out. Sincerely, I don't share those positions.
Let's start with Hardware. The latest hardware is always overpriced (it has to do with it being new and powerful, but also because prices tend to fall when something gets mass produced). When they buy it, they obtain the maximum possible performance, but they don't get the best power/price relation. The price of the latest video cards can cover the purchase of 3 great video cards, not so powerful as this one, but with enough power for most things.
Other computer pieces don't have a 3 to 1 relation, but a 2 to 1. That means that the price I pay for the greatest computer I can get right now would buy me two computers that each are capable of outrunning 95% of the other computers out there, or even 4 or 5 capable computers. I think that nobody here misses the point that 4 or 5 capable computers combined have more computing power than one extremely powerful one (of course, that's not counting the new Nvidia Tesla card).
There's of course a hidden cost in buying the latest technology: support and standards. Let's take for example a piece of hardware that got out a pair of years ago, the AGEIA PhysX, a pci board designed to crunch numbers related to physic models. This was planned as a sort of coprocessor to relieve the CPU and the video card from doing a lot of physics calculations, needed for example for the fast implementation of the rag doll concept
It was a concept similar to the first 3d acceleration cards (so similar that the technology is now inside video cards): freeing the processor from the most heavy and common 3d tasks. It wasn't an expensive card, but it lacked game support, with only one game implementing it's API by the time of launch.
A small number of other games announced projected support, but it has to be noted that the card wasn't really needed to play any of those games, being capable of emulating most of it by software. This was because standard PCs don't had that card, and as the game developers don't want to release something for just a few, they had to program it for machines without the expansion board.
It would have been nice to get one of that AGEIAs, the nerd inside me agrees, but the lack of support and the lack of standards around it, made it a risky business to buy one of those at that time. The same is happening right now with the Nvidia Tesla, although the niche market of science labs and supercomputer users might provide a nice launching area.
This is happening again and again in the PC industry. Whenever you buy something new and not common, you risk being trapped with something that might loose support quickly. This is why it's a good idea to buy proven technology. It has already been incorporated into some standard, it has already been evaluated, and they are definetely cheaper.
One little final word about going for something just because it's better. BETAMAX and VHS were fighting for the video standard. BETAMAX was superior, but VHS was cheaper. VHS finally became the standard, so betting on something just because it's better isn't always safe, there are always other things to consider.
Let's start with Hardware. The latest hardware is always overpriced (it has to do with it being new and powerful, but also because prices tend to fall when something gets mass produced). When they buy it, they obtain the maximum possible performance, but they don't get the best power/price relation. The price of the latest video cards can cover the purchase of 3 great video cards, not so powerful as this one, but with enough power for most things.
Other computer pieces don't have a 3 to 1 relation, but a 2 to 1. That means that the price I pay for the greatest computer I can get right now would buy me two computers that each are capable of outrunning 95% of the other computers out there, or even 4 or 5 capable computers. I think that nobody here misses the point that 4 or 5 capable computers combined have more computing power than one extremely powerful one (of course, that's not counting the new Nvidia Tesla card).
There's of course a hidden cost in buying the latest technology: support and standards. Let's take for example a piece of hardware that got out a pair of years ago, the AGEIA PhysX, a pci board designed to crunch numbers related to physic models. This was planned as a sort of coprocessor to relieve the CPU and the video card from doing a lot of physics calculations, needed for example for the fast implementation of the rag doll concept
It was a concept similar to the first 3d acceleration cards (so similar that the technology is now inside video cards): freeing the processor from the most heavy and common 3d tasks. It wasn't an expensive card, but it lacked game support, with only one game implementing it's API by the time of launch.
A small number of other games announced projected support, but it has to be noted that the card wasn't really needed to play any of those games, being capable of emulating most of it by software. This was because standard PCs don't had that card, and as the game developers don't want to release something for just a few, they had to program it for machines without the expansion board.
It would have been nice to get one of that AGEIAs, the nerd inside me agrees, but the lack of support and the lack of standards around it, made it a risky business to buy one of those at that time. The same is happening right now with the Nvidia Tesla, although the niche market of science labs and supercomputer users might provide a nice launching area.
This is happening again and again in the PC industry. Whenever you buy something new and not common, you risk being trapped with something that might loose support quickly. This is why it's a good idea to buy proven technology. It has already been incorporated into some standard, it has already been evaluated, and they are definetely cheaper.
One little final word about going for something just because it's better. BETAMAX and VHS were fighting for the video standard. BETAMAX was superior, but VHS was cheaper. VHS finally became the standard, so betting on something just because it's better isn't always safe, there are always other things to consider.
Subscribe to:
Posts (Atom)