|
              |     Total Hits: 413090 |
    |
|     Past 7 days: 1740 hits |
“The new way forward”
January 11, 2007 on 2:25 pm | In Technology | 1 CommentWas just watching the Rise-Gates-Pace press conference at the white house where the trio announced the details of the new US plan in Iraq for the next six months or so.
I know we heard that things were going to improve in Iraq for so many times over the past four years, and of course I could be totally wrong about this, but I think this is the first time that the US government and military has an actual plan on how to do things on the ground.
Sure, a lot will now reside on the shoulders of the Iraqi government, but as an Iraqi, I wouldn’t have it any other way. The Iraqi government needs to receive more responsibilities from the US. Iraqi politicians need to stand up to the promises they made to the people during the elections. Most notably, the government needs to gain control of the Iraqi security forces, which until now have been under direct US command.
If both the US army and the Iraqi government manage to at least secure Baghdad, it will be a HUGE step towards fixing the whole country. Having a secure capital is vital for having a secure central government, and lets not forget that Baghdad is home to over 20% of the country’s population.
Without securing Baghdad, there can never be a strong Iraq. Period.
Will 20,000 additional troops, on the back of the 141,000 troops already in Iraq be enough to fix the security situation there? or at least fix things in Baghdad? I don’t know. I guess we will have to wait, cross our fingers, and hope for the best.
iPhone Announcement
January 11, 2007 on 1:21 pm | In Technology | No CommentsFirst of all, I’m not a big fan of Apple. Nonetheless, I was quite impressed by their new iPhone. But despite its sleek, ultra cool looks, and the rather impressive spec sheet, there are still quite a few things that I want to know about this new cool toy before making my mind on whether I would want one.
Sure, on the paper all looks good, but there still are some of the things I want to know about the iPhone are: What kind of processor is it using? and how fast is it? How much RAM does it have? How much of a smudge magnet will the screen be? Equally important are things like how good will this “multi-touch” interface work? How good will the on screen keyboard be in the real world? how easy/hard will it be to develop 3rd party applications for it? when (if?) will Apple release the proper SDKs and development tools for this new toy, and how easy (hard?) will it be for developers to obtain those SDKs and tools?
Another thing that really concerns me, is whether Apple will follow on the same trend of offering the iPhone exclusively with a few select operators when the it is released in Europe and later in Asia. Tying customers to one specific carrier can be a major let down for many customers, most notably business customers who are the main users of smartphones.
Finally, there is the letigation Apple has with Cisco now about their ownership of the iPhone trademark. Unless this litigation is settled quickly, we will have to wait and see what Apple plans to do. Will they rename the iPhone? or will the launch be delayed until some sort of agreement is worked out? For better or worse, Cisco seems to have the upper hand in this trademark conflict.
I guess many of those questions will be answered when the iPhone makes it to the FCC for approval, most notably we will know quite a few more details about the hardware platform, and probably we will get a glimpse of the guts of the iPhone. For the other stuff, such as the details of the software platform and development tools, we will have to just sit back and wait for Apple to give us more details.
House keeping
January 7, 2007 on 7:21 pm | In Technology | No CommentsThis weekend, I finally did some long overdue house keeping for the website, and my server account.
First, was the incorporation of Google Analytics with two separate accounts, one for the main site here, and the other for the proxy.
Next inline, was the cleaning of some old log files, especially for the proxy, where my modifications to the original PHProxy script generate tons of log files. Still waiting for the release of an update from WhiteFyre, the author of PHProxy, to fix some bugs that cripple the current version.
Then, I finally made the switch IlohaMail to RoundCube for the webmail interface.
Last, but not least, I took down the classifieds section, which no one has used in about a year.
Discovery is back!
December 22, 2006 on 10:44 pm | In Miscellaneous, Technology | No CommentsDiscovery has just landed on Kennedy Space Center (KSC) after a successful 13-days mission to the International Space Station (ISS). This was the first mission I followed closely thanks to the availability of NASA TV online. Following the mission on NASA TV, I saw some awsome scenery of the earth, and some breath taking sunrises, sunsets, and even a storm system.
Like many fans of the space programme, I was a bit worried about Discovery not being able to land in time due to their limited Oxygen supplies. But thankfully, they made it on the first day, and at KSC, the home base of the space shuttle programme.
Breath taking, absolutely amazing
December 10, 2006 on 3:04 am | In Technology | No CommentsI was just watching NASA TV online and enjoyed a life coverage of the launch of Space Shuttle Discovery on mission STS-116 to continue the construction of The International Space Station. This was the third shuttle launch I watched live on NASA TV, but the first night launch I had the chance to see.
This was the first night launch of a space shuttle in four years. The shuttle lit up the sky as it ascended from Kennedy Space Center and it was nothing short of breath taking. Even more beautiful was the external tank camera that provided life video of the shuttle’s belly where you could see the shuttle’s attitude control thrusters on the side of the nose firing in the pitch black night.
The 7 astronauts on board Discovery have been in orbit for about two hours now. NASA officials say this is the most complex mission in constructing the ISS. One can’t but wish success and a safe return to earth for the 7 men and women on board Discovery.
My babies are back
December 1, 2006 on 11:09 pm | In Miscellaneous, Technology | No CommentsEver since leaving Iraq, there aren’t that many joys left in my life, and one of the main joys I have left here is listening to music.
Don’t get me wrong, I thank God every day for not being in all that mess going on in Iraq now. Still, a heaven without people is no heaven at all (which is a translation of the Iraqi saying “Janna bala awadem matinrad”).
Being a geek, and to some extent an audiophile, good enough audio quality doesn’t cut it for me. Listening to quality audio means I MUST have a sophisticated setup that tries to push the physical limits of reproducing a digital audio signal, but I also have to do that without breaking the bank.
So, a little over two years ago I set myself a budget of $200 (about 150 euros), and spent a couple of months researching and evaluationg my options, and settled on a setup that mainlycomprised of:
• a Creative Sound Blaster Extigy USB sound card to do the actual signal decoding and provide a wide array of digital and analogue signal inputs and outputs,
• and a set of TEAC PowerMax 2000 active 5.1 acoustic speaker system.
To keep my signal clean, and not have half a dozen cables running between my sound card and speakers set, I decided to linkthe two by a fiber optic cable
The sound card was bought refurbished from ebay, and the speakers set was bought on sale brand new from an electronics shop here in Portugal. This setup ended costing me about $180 (~140 euros), which was less than the maximum I set for myself. And if you think about it, it’s not a substantial amount of money if you consider the quality of the audio I am getting, as well as the comprehensible array of inputs I get from this setup. I have available optical and coaxial 5.1 digital surround inputs and outputs, MIDI input and output, mono and stereo mic inputs, stereo headphone output, analogue 5.1 line output, and three selectable sources of 5.1 surround sound input, most of those inputs and outputs have gold plated connectors.
This setup has been serving me very well for about two years, until a little over two months ago, when all of a sudden, my speakers set decided to stop accepting signal from both the optical and coaxial digital inputs it has.
Understandably, I was quite upset by this unfortunate event. My first impulse was to act as a responsible EU resident and comply with the EU regulations which state that every consumer product purchased in the euro zone is covered by at least two years of warranty even if the warranty card included with the product states a shorter warranty term. So, I took my precious babies to the electronics shop where I had purchased them from. Initially, it took the technicians they have at the shop three weeks to reach my same conclusion, that the speakers didn’t accept any sound signal through their digital inputs. However, me and the shop manager disagreed about how to proceed next. They thought that my babies were out of warranty. I, naturally, disagreed, and thought they are still covered by warranty in compliance with the EU regulations. It took another week for them to reach my same conclusion, then three weeks to repair the speakers, then another week to find the speakers remote control which was “lost” the speakers were being repaired.
Today, almost two months after I took the speakers back to the shop where I bought them from, today finally I got my babies back, and now I can go back to enjoying listening to music.
Using a PS3 for raw image conversion
November 26, 2006 on 11:39 pm | In Linux, Technology | No CommentsEarlier this year, I did some reading about the IBM-Sony-Toshiba Cell processor architecture, with its eight SPE (Synergistic Processing Elements). Like I said in a previous post, I believe that the Xbox360 tripple core PowerPC processor has more appeal for general purpose applications, but now that I am working on digital image processing applications, the two Cell processors inside Sony’s Play Station 3 console start to look really appealing. There are quite a few reasons why a PS3 would rock if used to carry the heavy procesing required in digital image processing such as raw conversion and photo retouching.
First, such applications lend themselves very well to heavy multithreading since most of the processing is simply running one or more functions iteratively on each pixel, so adapting code to run on the Cell’s SPE units shouldn’t be a complicated task. Second, The fact that each SPE has its own high speed local memory that is accessible and addressable by the softwre running on the main PPE (Power Processor Element) PowerPC core means that the application can quite easily load the image data they want to each of those processing elements.
Now, even with two Cell processors on board the PS3, I doubt the computation power would be anything close to what your average Geforce 7 or ATI 1xxx series graphics card can deliver. However, those SPEs inside the Cell processor should be much easier to program, like I said because each has its own memory that the application running on the PPE core can access and program.
Now that we have Linux running on the PS3, it would be interesting to see someone port, or create things like image processing, audio and/or video transcoding applications that can take advantage of the considerable amount of processing power that all those SPE units have to cut down processing times.
Why am I concerned? Because I started working on an application that allows photographers to adjust raw digital images prior to debayering/demosaicing those images to full RGB. Since then, my work expanded into the raw conversion process itself, where I managed to come with my own debayering algorithm. I am still working on adding support for the various camera makers raw file formats but hope to get the chance to port my code to something like a PlayStation 3 which would allow my application to execute several times faster than any x86 desktop or workstation available today and probably anytime in the next year, if not more.
More rants about multicore processors
March 28, 2006 on 5:36 am | In Technology | No CommentsWith dual core processors widely available at your average electronics shop, and quad core models not so far on the horizon, schedualed for release in 2007 by both Intel and AMD, its only a matter of time before we see even higher levels of integration, with eight or more cores integrated into one physical processor package.
However, while the move to dual core was more of a manufacturing probelm, having mostly to do with getting enough yields to justify production, the move beyond 4 cores will be a design challange in finding a way to let all those cores communicate effectively with each other, and with the reminder of the system without requiring an overwhelming amount of resources.
So, how could a processor designer manage to integrate say 16 cores into one package without an overwhelming amount of circuitry to glue those cores together?
One way would be to use a layered approach. To get a hold of this approach, first lets assume that quad-core processors would expand on the same methology used to connect dual-core processors, aka, using a crossbar to let both cores talk to each other, and to the reminder of the system. Taking the crossbar beyond four cores would be a very big design problem, as it would need to provide tremendous amounts of bandwidth.
Here is where the layered approach kicks in by borrowing an interconnect architecture that would devide those 16 cores into groups, with each group having a super fast interconnect, like the crossbar, and then glueing those groups together by a relatively slower interconnect, something like a Hyper Transport interconnect on steroids.
For example, in a 16 core model, we would have four groups of four cores each. Each quad-core group would connect as usual through the crossbar, and then the crossbars of the four quad groups would talk to ech other and the outside world through a simpler, relatively slower interconnect.
For such an approach to succeed there have to be some considerations at both the hardware and software levels. At the hardware level, each core would preferably have its own caches, or if the design permits, each group of cores shares one large cache (similar to Intel’s approach with the Pentium-M). This per-core, or per-group cache, would greatly minimize the amount of traffic between the groups, and the reminder of the system. In a multi socket setup, a shared bus would never work, as there would be a tremendous amount of load on the memory controller, plus all the traffic that would need to go between the cores. A setup similar to what AMD did with their Opteron line would be highly successful, having each physical processor have its own memory controller, and having a point-to-point topology connecting the physical processors around the system.
One addition at the hardware level that would greatly help at the software level in interprocess communication would be the addition of a number of small buffers, say four buffers of 4-8KB each per core that act as a very high speed shared memory that is addressable, and accessible to all the cores around the system. Of course, the OS would be responsible of assigning who could access those buffers. Such high speed buffers would eliminate the need of using a shared memory area in RAM for interprocess communication.
At the software level, which would perhaps have a greater impact on how such an arrangement performs, there will have to be some changes in the way the operating system deals with each core in an SMP system. First, the OS will need be aware about this layered approach and distribute the processes/threads at hand accordingly. At the most basic level, which is not something new, the OS will try its best to keep each process/thread on the same processor. In a system that has a large number of cores, this would substantially increase cache hits, as there would be far less context switches on each core. Then, if dealing with a multi-threaded application, the OS should try to keep the threads within the same group of cores, as those cores have the highest amount of bandwidth available interconnecting them. If there are more threads than the cores in each group, and all of those threads are fully loading the group of cores, then the OS would allocate more cores for this application within the same package. Only when the given application has such a high number of processes/threads that are more than all the cores on the package/socket can handle, that the OS would consider running those extra threads/processes accross multiple physical processors. In short, at the software level, its all about affinity.
Of course, if we are talking about 16 full fledged cores per processor package, the OS would have a lot more flexibility in shcedualing and assigning processes/threads to a certain core. The less processes/threads are assigned to each core, the less context switches that would have to be carried, also minimizing the need for large caches.
In the end, while such a layered solution for integrating a large number of cores into a single processor package would require a considerable amount of hardawre redesign, and software changes at the OS level, there is very little change at the application level, and doesnt break backward compatibility with older applications, while enabling substantial performance improvements for applications that are coded with the system design and features in mind.
Some ideas about RC planes
January 22, 2006 on 6:49 pm | In Technology | 4 CommentsI’ve always been a big fan of aviation, and always wanted to learn to fly RC planes, and even build a few of my own, but living in Iraq during the embargo years didn’t help much in fulfilling this dream.
Anyways, I’ve been reading and following RC groups around the net for quite some time, and though I still haven’t flown an RC plane, I think I’ve learn quite a lot from reading all the forums around the net.
One of the topics that are often discussed is long endurance RC planes, especially within the UAV (unmanned aerial vehicles) communities and how to achieve this. Most of the discussion usually revolves around using composite materials in building the air frame, or how to improve fuel consumption and engine efficiency, and sometimes (very rare) someone thinks about hybrid RC planes but without having any clear idea on how to do this.
So, here are some of the ideas that I’ve had across the years:
First, I want to talk about hybrids. When thinking about a hybrid, most people tend to use the same analogy for cars, which is using the gas powered engine to charge a set of batteries that are later used to power an electric motor that in turn drives the car. This usually works in cars because cars don’t usually utilize the power provided by these engines to its full extent, and spend a considerable amount of time idling in traffic jams. This analogy falls apart with airplanes since they are bound by physics laws and have to keep moving above a particular minimum speed. So, what kind of hybrid solution can be used?
Well, my idea is about using solar cells to provide electric power. I think it has already been proven that its possible to fly a glider using solar power alone, at least during day, and have a gas powered engine kick in only when the plane requires extra thrust, say during climb. Even if those solar cells don’t provide enough power to drive a propeller, they can still be used to provide power to run the flight electronics and servos, and even drive a relatively high power video (and/or telemetry) link for many hours.
Integrating solar power in an RC plane, even with not so efficient cells, doesn’t add a lot of weight. There are many (extremely) light weight, and flexible solar cells being sold around the net for very reasonable prices, that will not add much weight to the RC plane. If you consider the weight saving from requiring having less battery packs on board, there is a good chance that there won’t be any increase in weight at all. You would still need to have some battery packs on board to provide for backup and insure stable operation, but no big packs would have to be carried on board.
Next in line, there is engine efficiency. There has been a lot of talk about how 4-stroke engines are more fuel efficient, and how fuel injection, electronic ignition, and using smaller carburetors can dramatically reduce fuel consumption, so there’s not much to talk about here.
One, simplistic, way to increase flight time is to simply carry more fuel. The way I am thinking about achieving this is by designing a wet-wing, aka using the wing structure as a fuel tank. While this is no new idea in real planes (even small Cessna planes use wet-wings), I still have to see someone implement this in an RC plane. Some of the advantages of using a wet-wing design include increased available space in the plane haul, relatively lighter and possibly smaller haul design since the weight of the fuel will be carried inside the wings. Other benefits include less strain on the area where the body of the plane attaches to the wings, since the body will be considerably lighter.
The major hurdle, and the reason I think no one has done this on an RC plane, is that it’s not really easy to seal the wing structure against leaks while still maintaining the flexibility and light weight of the (dry) wing. Another reason is that in building such a wing, you need to thoroughly consider the materials that will be used in the construction of the wings, since the fuel can be corrosive against many materials.
Considering the huge advances in composite materials, and how they are being increasingly used in the construction of RC planes, such as carbon fiber, epoxy, Kevlar, and Teflon, I believe its has become more feasible to build such a wing. It will still require a considerable amount of engineering work in making casts for the custom wing molds, but I believe it’s doable.
Another idea that I’ve been thinking about, though I don’t know if it works or not, is using part of the thrust generated by the propeller as a sort of a super charger (or turbo charger if you want), to increase the amount of air that is going to the engine, and hence increase the total power generated by the engine. Of course we are talking about internal combustion engines here. In a very simplistic way, this can be achieved by using an adapter to increase the area of the carburetor air intake, hence catching more of the air flow generated by the propeller. Again, I don’t know if this will provide any significant increase in power, or if it will provide any increase at all, but I think it’s not that hard to experiment with to find out.
Of course, one could integrate ideas and build a wet-wing and have the top surface of the wing covered with solar cells. It will be quite a feat to do that, but I think the outcome, if properly engineered, would be quite remarkable.
I guess that’s about it for this post. I have a lot of other ideas for UAVs, dealing with automatic route planning, maintaining constant low ground altitude (while avoiding crashing), terrain following, and laser guidance, but I think that I would be getting myself in a good amount of troubles by discussing those topics anywhere online, especially if such topics are raised by an Iraqi guy. I already get enough hostile comments from many people around the net just because of where I come from. I guess there are a lot of ignorant people out there who truly believe that ignorance is indeed a bliss, but what can you do about that?
Thoughts about IBM’s PowerPC
December 27, 2005 on 6:03 am | In Technology | No CommentsIs anybody noticing how IBMs PowerPC architecture is catching on the market?
The usual market for the PowerPC (PPC) architecture was usually high end IBM servers, and those “few” Macs sold by Apple, but now the picture is changing, and we see more and more PowerPC devices coming to the market.
First, take a look at the upcoming Play Station 3 Cell processor. Its based on a PPC core to power its general rocessing requirements. True that the cell processor is being advertised as as an IBM, Sony, and Toshiba, but if you look really closely you will see that IBM’s contribution in the design is more or less limited to the PPC core that the Cell processor is based on. Now, if you look really close at the Cell processor project, you will see that its a win-win situation for IBM. First, the got a good amount of money from Sony and Toshiba for licensing their PPC arcitecture. Then, Sony paid IBM a nice $600M to expand their FishKill fab, which will be the main fab that manufactures the Cell processors powering the upcoming PS3. So, in the end, whether the Cell processor is a financial success for Sony and Toshiba or not, IBM is on the safe side here. They already got paid for making extra room in their fab to make the Cell, so they arent sacrificing any production capacity to make the Cell, which could have affected IBMs contracts with its other clients, and they will get a new good base of developers who will be getting their hands on developing new code targeted to the new PPC based Cell architecture, whether that is in the form of games for the PS3, or for any other devices built around the new Cell platform.
Now, lets take a look at the other rival of Sony’s PS3, namely Microsoft’s Xbox 360, which has migrated from Intel’s x86 based architecture (used for the original Xbox) to IBM’s PPC architecture, and what a move that was. Microsoft convinced IBM to make them a nice custom tripple core PPC based chip running at an even nicer 3.2GHz. Its still to be seen if IBM will use that custom chip, dubbed Xenon, to make other products, namely servers and probably even some workstations, but the point is like the PS3, the Xbox 360 will too get a good deal of developers to work on the PPC architecture and write new code, new libraries, and get familiar with this nice, efficient, and often left in the shadows architecture.
Finally, in the summer of 2006, we should see the debut of a new processor, a new computing platform coming from a new player in the buisness, but nevertheless based on a not so new processing architecture. Of course, I am talking about none other than PA Semi’s PWRficient not so “embedded platform”. I say not so embedded because while the upcoming chip does fit as an embedded platform in terms of power consumption and high level of integration, its desn’t really feel like your average embedded processing platform when it comes to performance. Again, this new piece of silicon will be based on a couple of PPC cores running at a nice 2GHz clock speed, and carrying an even nicer 2MB cache. I already went into some depth about the design specifics of the PWRficient, so I wont delve into that here, other than to note the power envelope at which the upcoming chip will run. The designers estimate the chip to have a mere 13W TDP. Now just think about having one of those powering a notebook. This piece of silicon will be capable of beating the best offering from Intel, AMD, and any other company i terms of processing power and power consumption. When you consider the level of integration of the chip which translates in a highly reduced bill of components, which translates into even more savings in the price tag, and much less total power consuption from the whole device, the PWRficient gets even more attractive. The only hardle that needs to be overcome is getting a nice OS to run on top of such a notebook (actually, its not so much of a hardle if you think of Linux). It would be really nice to see a a Mac OS version targetted at the PWRficient (if his Jobliness agrees to make a “port” of the Mac OS targetted at this platform). Such a notebook could easily get 6-8hrs when paired with your average 60-70W notebook battery. Now that is what I call a true mobile platform.
Another very good use of the PWRficient platform is in the blade server sement, where a large number of PWRficient based servers could be squeezed into a very small volumes thanks to the high level of integration and low power consumption figures of this chip. It wouldn’t be so hard to design a rather capable server that consumes under 50W of power under full load.
So, at the end of the day, we see more and more companies moving to the PowerPC platform. If this trend continues, this arcitecture may be the most serious contender to the dominance of the x86 architecture in the not so far future. Maybe Steve Jobs did have a vision that was ahead of his time back when he switched from Motorola’s 680×0 to the PPC back in the 90s (or maybe not, as he is dumping PPC in favor of Intel’s x86 processors now).
Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^
Free website monitoring service
        