Technology as a way of life

Life is the art of drawing without an eraser...

Windows 7 fairing far batter than Windows Vista in early adoption.

Consumers and businesses are much warmer towards Windows 7 than they were towards Windows Vista – and the numbers are showing it.

According to data collected by Net Applications, relayed by Ars Technica, Windows 7 now has a greater than 10 percent market share amongst internet users.
While this it still represents the smallest piece of the current Windows pie, historical comparisons show that the uptake of Windows 7 is more than twice of what Windows Vista did in its first five months of availability.

Windows 7 Build 7201 is being distributed in various P2P networks and other file sharing systems. Both a 32-bit and 64-bit edition of build 7201 have been leaked and are now downloaded by thousands of users.

The Release Candidate keys appear to be working with build 7201 as well. There are not many obvious changes and it is generally assumed that Microsoft concentrated on eliminating bugs of the previous versions.

Here are the build strings and hashes of the leaked builds:

MICROSOFT.WINDOWS.7.BUILD.7201.0.090601-1516.X86.ENGLISH.DVD-SUKONKA
BUILD: 6.1.7201.0.090601-1516
7201.0.090601-1516_x86fre_client_en-us_Retail_Ultimate-GRMCULFRER_EN_DVD.iso
SIZE: 2,499,923,968 bytes
MD5: 70E48837DD513BA98FE483AFD0746E37
SHA1: F2BC6FC5861C76C401DF6DA7137962C727ED938D
CRC: 102CCA5A

MICROSOFT.WINDOWS.7.BUILD.7201.0.090601-1516.X64.ENGLISH.DVD-SUKONKA
BUILD: 6.1.7201.0.090601-1516
7201.0.090601-1516_x64fre_client_en-us_Retail_Ultimate-GRMCULXFRER_EN_DVD.iso
SIZE: 3,223,117,824 bytes
MD5: A64636ED74E50E7E882CDB5B80A8FCFA
SHA1: 92AC49897DE56F62BF0EF5C138974179EDE74C50
CRС: 0AFDFA70


Microsoft announced today that Windows 7 will be released October 22nd. Although Microsoft said Windows 7 would be out in time for the holiday period, I doubt many people expected such an early date. A Windows 7 RTM build should hit the streets around August.

Users who purchase a Windows Vista based system from the summer should expect to be offered an upgrade offer, rather than having to pay the full price to buy Windows 7.

Manufacturers already seem to be licking their lips in anticipation of Windows 7’s release, so expect to be bombarded with Windows 7 promotions this Christmas:

“We’re locked and loaded for the launch,” McKinney said. “The quality of code is just absolutely stellar.” Phil McKinney, chief technology officer of Hewlett-Packard’s computer unit.

I guess many of you are google-ing all day for tweaks to bring DirectX 10 on XP and are not sure what to do considering the massive contradictory information. The interesting thing is some russian site made an alpha "patch" to add the functionality to XP. But does it actually work?
After downloading the patch, i installed it on a virtual machine to see if it will even boot afterwards.
Well, to my surprise it did boot normal and the DirectX Diagnostic Tool (dxdiag.exe) "confirmed" it's installed. This would be enough proof for the majority of the people but not for a geek like me. That little "change" is easily done by modifing a file and a bit of registry tweaking. So that still doesn't convince me. The patch could actually work with the SDK's (Software Development Kit) DirectX 10 only and not suitable for games. It makes the system think you have Dx10 but no actual use can be achieved (the extra features are not enabled in anything).

Microsoft did annnounce there is no compatibility between XP and Dx10 because of changes in the Windows Display Driver Model (WDDM) and the new audio driver stack plus other updates in the operating system.

Will DirectX 10 be available for Windows XP?

No. Windows Vista, which has DirectX 10, includes an updated DirectX runtime based on the runtime in Windows XP SP2 (DirectX 9.0c) with changes to work with the new Windows Display Driver Model (WDDM) and the new audio driver stack, and with other updates in the operating system. In addition to Direct3D 9, Windows Vista supports two new interfaces when the correct video hardware and drivers are present: Direct3D9Ex and Direct3D10."

Since these new interfaces rely on the WDDM technology, they will never be available on earlier versions of Windows. All the other changes made to DirectX technologies for Windows Vista are also specific to the new version of Windows. The name DirectX 10 is misleading in that many technologies shipping in the DirectX SDK (XACT, XINPUT, D3DX) are not encompassed by this version number. So, referring to the version number of the DirectX runtime as a whole has lost much of its meaning, even for 9.0c. The DirectX Diagnostic Tool (DXdiag.exe) on Windows Vista does report DirectX 10, but this really only refers to Direct3D 10.

Since these new interfaces rely on the WDDM technology, they will never be available on earlier versions of Windows. All the other changes made to DirectX technologies for Windows Vista are also specific to the new version of Windows. Even if it's displayed as Dx10 that doesn't mean you actually have Direct3D 10 which is needed for 100% DX10. Anyway, let's see if a DX10 game will start under these conditions because if it will that will prove i'm wrong.

Well what a big surprise ... i was actually 100% sure that it would not work. Going a little offtopic i want to ask you this:
Why would someone with a decent computer (considering he wants Dx10) would still use xp after 7 years from it's release when Windows 7 is just around the corner (yes i admit Vista kinda sucks) and will be what Vista should have been. Sure it eats more RAM, but let's face it... systems are built with a minimum of 2GB nowadays and 4GB systems are really common. As i discussed this in an earlier post, whats the point of having loads of memory if it's gonna be unused (as in xp). Vista at least occupies it with the most used programs which helps the starting time of those applications.

Back on topic, Windows XP DX10 is a myth and does NOT work as it should so i consider it BUSTED!


Disabling QoS to Free Up 20% of Bandwidth

This tip made the rounds with people believing that Microsoft always allocates 20% of your bandwidth for Windows Update. According to the instructions, you were supposed to disable QoS in order to free up bandwidth. Unfortunately this tip was not only wrong, but disabling QoS will cause problems with applications that rely on it, like some streaming media or VoIP applications.

Rather than taking my word for it, you can read the official Microsoft response: "There have been claims in various published technical articles and newsgroup postings that Windows XP always reserves 20 percent of the available bandwidth for QoS. These claims are incorrect... One hundred percent of the network bandwidth is available to be shared by all programs unless a program specifically requests priority bandwidth."

Make Vista Use Multiple Cores to Speed Up Boot Time

boot_option.jpgThis bogus tip made the rounds recently and almost everybody got caught including Lifehacker and big brother site Gizmodo... although commenters called it out quickly on both sides, and the editors updated the posts. (That's yet another reason to always participate in the comments here.)

According to this tip, you were supposed to use MS Config to modify the "Number of processors" drop-down on the Boot tab. The problem is that this setting is only used for troubleshooting and debugging, to be able to determine if there is a problem with a single processor, or for a programmer to test their code against a single core while running on a multi-core system. Windows will use all your processors by default without this setting.

Clearing Out Windows Prefetch for Faster Startup

The Prefetch feature in Windows XP caches parts of applications that you frequently use and tries to optimize the loading process to speed up application start time, so when a number of sites started suggesting that you clean it out regularly to speed up boot time it seemed like good advice... but sadly that's not the case, as pointed out by many Lifehacker commenters.

The Prefetch feature is actually used as a sort of index, to tell Windows which parts of an application should be loaded into memory in which order to speed up application load time, but Windows doesn't use the information unless it's actually starting an application. There's also a limit of 128 files that can be stored in the prefetch folder at any point, and Windows cleans out the folder automatically, removing information for applications that haven't been run as frequently. Not only that, but a well-written defrag utility will use the prefetch information to optimize the position of the files on the disk, speeding up access even further.

Cleaning the Registry Improves Performance


The Windows registry is a massive database of almost every setting imaginable for every application on your system. It only makes sense that cleaning it out would improve performance, right? Sadly it's just a marketing gimmick designed to sell registry cleaner products, as the reality is quite different... registry cleaners only remove a very small number of unused keys, which won't help performance when you consider the hundreds of thousands of keys in the registry.

Clear Memory by Processing Idle Tasks

By this point you should be starting to get the picture... if something sounds too good to be true, it likely is. This well-traveled tip usually claims that you can create an "undocumented" shortcut to Rundll32.exe advapi32.dll,ProcessIdleTasks that will clear out memory by processing all of the idle tasks wasting memory in the background.

What's the problem? Those idle tasks aren't actually waiting in the background... what you are effectively doing is telling the computer that you've walked away so it can now do other processing while you are idle. Except you aren't. The real purpose of this functionality is to finish all processing before running benchmarks to ensure consistent times, and according to the Microsoft documentation there's a whole different story

Clean, Defrag and Boost Your RAM With SnakeOil Memory Optimizer

Just take a quick look at any download site, and you'll find hundreds of products that claim to "optimize RAM to make your computer run faster". Give me a break! Almost all of these products do the same things: they call a Windows API function that forces applications to write out their memory to the pagefile, or they allocate and then deallocate a ton of memory quickly so that Windows will be forced to page everything else.

Both of the techniques make it appear that you've suddenly freed up memory, when in reality all you've done is trade in your blazing fast RAM for a much slower hard drive. Once you have to switch back to an application that has been moved to the pagefile, it'll be so slow you'll be likely to go all Office Space on your machine.

Disabling Shadow Copy/System Restore Improves Performance

I've barely come across a Windows Vista tips site that doesn't tell you to disable System Restore to speed up performance, because it takes up to 15% of your hard drive by default, which sounds like good advice. Except it's not.

The reality is that System Restore only actually kicks in when you are installing updates or applications, or at pre-scheduled times in the day, and the automatic checkpoints will only happen when your computer is not being used. These checkpoints allow you to easily roll back your system to a pre-crash state, and I can tell you from experience that System Restore is a critical feature when your Vista machine has problems, allowing you to easily get back to a working state.

Enable SuperFetch in Windows XP

Somebody decided to start spreading the myth that you could enable SuperFetch in Windows XP by adding the same EnableSuperfetch key into the registry that Windows Vista has, and it spread like wildfire. Naturally, this tip was completely bogus.

The good news is that this tip is one of the few that will not harm your system in any way, as long as you don't break something while editing the registry. If you insist on using it, I won't complain.

Disabling Services to Speed Up the Computer

Perhaps the most common myth is the advice to disable all services that you aren't using. I realize this will generate some controversy, so let me clarify: Disabling non-essential services that are NOT part of Windows will sometimes yield a performance gain if you have identified those services as causing a problem. You can identify or disable those services by opening msconfig.exe and checking the box for "Hide all Microsoft services" on the Services tab:

The problem with disabling services is that your devices will often not work once you do: for instance, I disabled the "Unknown" dlbt_device service in the list above, and could no longer print to my Dell printer... disabling the VMware services made VMware unable to run, and so forth.

You should be even more careful to not disable built-in Microsoft services in Windows, except for a select few under certain circumstances:

  • SuperFetch—This caching service preloads applications into memory, and actually does work. The problem is that it can cause your hard drive to do a lot of grinding while it's working, which is especially irritating on a laptop.
  • Windows Search—If you don't use the Vista search or you use an alternate desktop search engine, you really don't need this service and can increase performance quite a bit by disabling it.
  • Windows Defender - If you are already using another anti-malware product, you really don't need this running as well.

Enabling AlwaysUnloadDLL frees up more memory and improves performance

Reality - "Adding this Registry Key in Windows 2000 or XP has no effect since this registry key is no longer supported in Microsoft Windows 2000 or later. The Shell automatically unloads a DLL when its usage count is zero, but only after the DLL has not been used for a period of time. This inactive period might be unacceptably long at times, especially when a Shell extension DLL is being debugged. For operating systems prior to Windows 2000, you can shorten the inactive period by adding this registry key."


"Adding ConservativeSwapfileUsage=1 to the System.ini file improves performance."

Reality - "The System.ini and Win.ini files are provided in Windows XP for backward compatibility with 16-bit applications (MS-DOS-based programs). They have no effect on the Windows XP paging file settings which are stored in the Registry. This setting only effects Windows 95/98 operating systems. The default setting for ConservativeSwapfileUsage is 1 for Windows 95, and 0 (zero) for Windows 98. On Windows 98 systems you can set ConservativeSwapfileUsage=1 under the [386Enh] heading of the System.ini file causing the system to behave as Windows 95 does, at some cost in overall system performance."


"Setting DisablePagingExecutive to 1 improves performance by preventing the kernel from paging to disk."

Reality - "DisablePagingExecutive applies only to ntoskrnl.exe. It does not apply to win32k.sys (much larger than ntoskrnl.exe!), the pageable portions of other drivers, the paged pool and of course the file system cache. All of which live in kernel address space and are paged to disk. On low memory systems this can force application code to be needlessly paged and reduce performance. If you have more than enough RAM for your workload, yes, this won't hurt, but then again, if you have more than enough RAM for your workload, the system isn't paging very much of that stuff anyway. This setting is useful when debugging drivers and generally recommended for use only on servers running a limited well-known set of applications."


"The built-in Disk Defragmenter is good enough."

Reality - "This statement would be true if the built-in defragmenter was fast, automatic, and customizable. Unfortunately, the built-in defragmenter does not have any of these features. The built-in defragmenter takes many minutes to hours to run. It requires that you keep track of fragmentation levels, you determine when performance has gotten so bad you have to do something about it, and then you manually defragment each drive using the built-in defragmentation tool."


"Adding IRQ14=4096 to the System.ini file improves performance."

Reality - "This is a made up nonexistent command that does absolutely nothing. The System.ini and Win.ini files are provided in Windows XP for backward compatibility with 16-bit applications (MS-DOS-based programs). They have no effect on any Windows XP settings or 32-bit applications which are stored in the Registry."


"Adjusting the Priority of IRQs especially IRQ 8 improves system performance."

Reality - "IRQs don't even HAVE a concept of "priority" in the NT family; they do have something called "IRQL" (interrupt request level) associated with them. But the interval timer interrupt is already assigned a higher IRQL than any I/O devices, second only to the inter-processor interrupt used in an MP machine. The NT family of OSes don't even use the real-time clock (IRQ 8) for time keeping in the first place! They use programmable interval timer (8254, on IRQ 0) for driving system time keeping, CPU time accounting, and so on. IRQ 8 is used for profiling, but profiling is almost never turned on except in very rare development environments. Even if it was possible it doesn't even make sense why adjusting the real-time clock priority would boost performance? The real-time clock is associated with time keeping not CPU frequency. I would not be surprised if this originated in an overclocking forum somewhere. This "tweak" can be found in most XP all-in-one tweaking applications. This is a perfect example of why they are not recommended."


"Enabling LargeSystemCache improves desktop/workstation performance."

Reality - "LargeSystemCache determines whether the system maintains a standard size or a large size file system cache, and influences how often the system writes changed pages to disk. Increasing the size of the file system cache generally improves file server performance, but it reduces the physical memory space available to applications and services. Similarly, writing system data less frequently minimizes use of the disk subsystem, but the changed pages occupy memory that might otherwise be used by applications. On workstations this increases paging and causes longer delays whenever you start a new app. Simply put enable this on a file server and disable it on everything else."

Notes - "System cache mode is designed for use with Windows server products that act as servers. System cache mode is also designed for limited use with Windows XP, when you use Windows XP as a file server. This mode is not designed for everyday desktop use. When you enable System cache mode on a computer that uses Unified Memory Architecture (UMA)-based video hardware or an Accelerated Graphics Port (AGP), you may experience a severe and random decrease in performance. For example, this decrease in performance can include very slow system performance, stop errors, an inability to start the computer, devices or applications that do not load, and system instability. The drivers for these components consume a large part of the remaining application memory when they are initialized during startup. Also, in this scenario, the system may have insufficient RAM when the following conditions occur:

- Other drivers and desktop user services request additional resources.
- Desktop users transfer large files.

By default LargeSystemCache is disabled in Microsoft Windows XP.


"Disabling the Paging File improves performance."

Reality - "You gain no performance improvement by turning off the Paging File. When certain applications start, they allocate a huge amount of memory (hundreds of megabytes typically set aside in virtual memory) even though they might not use it. If no paging file (pagefile.sys) is present, a memory-hogging application can quickly use a large chunk of RAM. Even worse, just a few such programs can bring a machine loaded with memory to a halt. Some applications (e.g., Adobe Photoshop) will display warnings on startup if no paging file is present."

Notes - "In modern operating systems, including Windows, application programs and many system processes always reference memory using virtual memory addresses which are automatically translated to real (RAM) addresses by the hardware. Only core parts of the operating system kernel bypass this address translation and use real memory addresses directly. All processes (e.g. application executables) running under 32 bit Windows gets virtual memory addresses (a Virtual Address Space) going from 0 to 4,294,967,295 (2*32-1 = 4 GB), no matter how much RAM is actually installed on the computer. In the default Windows OS configuration, 2 GB of this virtual address space are designated for each process' private use and the other 2 GB are shared between all processes and the operating system. RAM is a limited resource, whereas virtual memory is, for most practical purposes, unlimited. There can be a large number of processes each with its own 2 GB of private virtual address space. When the memory in use by all the existing processes exceeds the amount of RAM available, the operating system will move pages (4 KB pieces) of one or more virtual address spaces to the computer's hard disk, thus freeing that RAM frame for other uses. In Windows systems, these "paged out" pages are stored in one or more files called pagefile.sys in the root of a partition. Virtual Memory is always in use, even when the memory required by all running processes does not exceed the amount of RAM installed on the system."


Hope that cleared up some of the usual myths. Also the XP fanboys who think having 90% of the ram free is good... i have news for you... it sucks. All aplications will reload themselves everytime you execute them. By letting Windows use all the available RAM it will automatically store the most used applications so they can start almost instantly. Why have 2/4/8 gb of ram if it's gonna be empty all the time? That's why it's called memory... to actually have something on it to be usefull. Don't worry windows will free the memory if you start something else which it didn't precache already.


"What is DirectX?"

Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with Direct, such as Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound, and so forth. DirectX, then, was the generic term for all of these APIs and became the name of the collection. After the introduction of the Xbox, Microsoft has also released multiplatform game development APIs such as XInput, which are designed to supplement or replace individual DirectX components.

Direct3D (the 3D graphics API within DirectX) is widely used in the development of video games for Microsoft Windows, Microsoft Xbox, and Microsoft Xbox 360. Direct3D is also used by other software applications for visualization and graphics tasks such as CAD/CAM engineering. As Direct3D is the most widely publicized component of DirectX, it is common to see the names "DirectX" and "Direct3D" used interchangeably.

The DirectX software development kit (SDK) consists of runtime libraries in redistributable binary form, along with accompanying documentation and headers for use in coding. Originally, the runtimes were only installed by games or explicitly by the user. Windows 95 did not launch with DirectX, but DirectX was included with Windows 95 OEM Service Release 2.[1] Windows 98 and Windows NT 4.0 both shipped with DirectX, as has every version of Windows released since. The SDK is available as a free download. While the runtimes are proprietary, closed-source software, source code is provided for most of the SDK samples.

The latest versions of Direct3D, namely, Direct3D 10 and Direct3D 9Ex, are only officially available for Windows Vista, because each of these new versions was built to depend upon the new Windows Display Driver Model that was introduced for Windows Vista. The new Vista/WDDM graphics architecture includes a new video memory manager that supports virtualizing graphics hardware to multiple applications and services such as the Desktop Window Manager


Several components are needed in DirectX

DirectX 10 was introduced with Windows Vista exclusively because previous versions of Windows such as Windows XP are not able to officially run DirectX 10-exclusive applications.

DirectX 10.1 is an incremental update of DirectX 10 which is shipped with, and requires, Windows Vista Service Pack 1.[8] This release mainly sets a few more image quality standards for graphics vendors, while giving developers more control over image quality. It also adds support for parallel cube mapping and requires that the video card supports Shader Model 4.1 or higher and 32-bit floating-point operations. Direct3D 10.1 still fully supports Direct3D 10 hardware, but in order to utilize all of the new features, updated hardware is required.

DirectX 11 was unveiled at the Gamefest 08 event in Seattle, with the major scheduled features including GPGPU support, tessellation[11][12] support, and improved multi-threading support to assist video game developers in developing games that better utilize multi-core processors. Direct3D 11 will run on Windows Vista and its successor Windows 7. Parts of the new API such as multi-threaded resource handling can be supported on Direct3D 9/10/10.1-class hardware. Hardware tessellation and Shader Model 5.0 will require Direct3D 11 supporting hardware.

This is the DirectX 10 pipeline

And this is DirectX 11


Many of the enhancements mean higher performance for features already available in DX10 but less used. Tessellation (made up of the hull shader, tessellator and domain shader) and the Compute Shader are major developments that could close the gap between reality and unreality.

Along with the pipeline changes, we see a whole host of new tweaks and adjustments. DirectX 11 is actually a strict superset of DirectX 10.1, meaning that all of those features are completely encapsulated in and unchanged by DirectX 11. This simple fact means that all DX11 hardware will include the changes required to be DX 10.1 compliant and in addition to these tweaks, there are also new extensions:

While changes in the pipeline allow developers to write programs to accomplish different types of tasks, these more subtle changes allow those programs to be more complex, higher quality, and/or higher performance.

DX11 And The Multi-Threaded Game Engine

In spite of the fact that multi-threaded programming has been around for decades, mainstream programmers didn't start focusing on parallel programming until multi-core CPUs started coming along. Much general purpose code is straightforward as a single thread; extracting performance via parallel programming can be difficult and isn't always obvious. Even with talented programmers, Amdahl's Law is a bitch: your speed up from parallelization is limited by the percent of code that is necessarily sequential.

No matter what anyone does, some stuff in the renderer will need to be sequential. Programs, textures, and resources must be loaded up; geometry happens before pixel processing; draw calls intended to be executed while a certain state is active must have that state set first and not changed until completion. Even in such a massively parallel machine, order must be maintained for many things. But order doesn't always matter.

Making more things thread-safe through an extended device interface using multiple contexts and making a lot of synchronization overhead the responsibility of the API and/or graphics driver, Microsoft has enabled game developers to more easily and effortlessly thread not only their rendering code, but their game code as well. These things will also work on DX10 hardware running on a system with DX11, though some missing hardware optimizations will reduce the performance benefit. But the fundamental ability to write code differently will go a long way to getting programmers more used to and better at parallelization. Let's take a look at the tools available to accomplish this in DX11.

First up is free threaded asynchronous resource loading. That's a bit of a mouthful, but this feature gives developers the ability to upload programs, textures, state objects, and all resources in a thread-safe way and, if desired, concurrent with the rendering process. This doesn't mean that all this stuff will get pushed up in parallel with rendering, as the driver will manage what gets sent to the GPU and when based on priority, but it does mean the developer no longer has to think about synchronizing or manually prioritizing resource loading. Multiple threads can start loading whatever resources they need whenever they need them. The fact that this can also be done concurrently with rendering could improve performance for games that stream in data for massive open worlds in addition to enabling multi-threaded opportunities.

In order to enable this and other threading, the D3D device interface is now split into three separate interfaces: the Device, the Immediate Context, and the Deferred Context. Resource creation is done through the Device. The Immediate Context is the interface for setting device state, draw calls, and queries. There can only be one Device and one Immediate Context. The Deferred Context is another interface for state and draw calls, but many can exist in one program and can be used as the per-thread interface (Deferred Contexts themselves are thread unsafe though). Deferred Contexts and the free threaded resource creation through the device are where DX11 gets it multi-threaded benefit.

Multiple threads submit state and draw calls to their Deferred Context which complies a display list that is eventually executed by the Immediate Context. Games will still need a render thread, and this thread will use the Immediate Context to execute state and draw calls and to consume the display lists generated by Deferred Contexts. In this way, the ultimate destination of all state and draw calls is the Immediate Context, but fine grained synchronization is handled by the API and the display driver so that parallel threads can be better used to contribute to the rendering process. Some limitations on Deferred Contexts include the fact that they cannot query the device and they can't download or read back anything from the GPU. Deferred Contexts can, however, consume the display lists generated by other Deferred Contexts.

The end result of all this is that the future will be more parallel friendly. As two and four core CPUs become more and more popular and 8 and 16 (logical) core CPUs are on the horizon, we need all the help we can get when trying to extract performance from parallelism. This is a good move for DirectX and we hope it will help push game engines to more fully utilize more than two or even four cores when the time comes


The DX11 Compute Shader and OpenCL/OpenGL

Enter DirectX11 and the CS. Developers have the option to pass data structures over to the Compute Shader and run more general purpose algorithms on them. The Compute Shader, like the other fully programmable stages of the DX10 and DX11 pipeline, will share a single set of physical resources (shader processors).

This hardware will need to be a little more flexible than it currently is as when it runs CS code it will have to support random reads and writes and irregular arrays (rather than simple streams or fixed size 2D arrays), multiple outputs, direct invocation of individual or groups of threads as per the programmer's needs, 32k of shared register space and thread group management, atomic instructions, synchronization constructs, and the ability to perform unordered IO operations.

At the same time, the CS loses some features as well. As each thread is no longer treated as a pixel, so the association with geometry is lost (unless specifically passed in a data structure). This means that, although CS programs can still use texture samplers, automatic trilinear LOD calculations are not automatic (LOD must be specified). Additionally, depth culling, anti-aliasing, alpha blending, and other operations that have no meaning to generic data cannot be performed inside a CS program.

The type of new applications opened up by the CS are actually infinite, but the most immediate interest will come from game developers looking to augment their graphics engines with fancy techniques not possible in the Pixel Shader. Some of these applications include A-Buffer techniques to allow very high quality anti-aliasing and order independent transparency, more advanced deferred shading techniques, advanced post processing effects and convolution, FFTs (fast Fourier transforms) for frequency domain operations, and summed area tables.

Beyond the rendering specific applications, game developers may wish to do things like IK (inverse kinematics), physics, AI, and other traditionally CPU specific tasks on the GPU. Having this data on the GPU by performing calculations in the CS means that the data is more quickly available for use in rendering and some algorithms may be much faster on the GPU as well. It might even be an option to run things like AI or physics on both the GPU and the CPU if algorithms that always yield the same result on both types of processors can be found (which would essentially substitute compute power for bandwidth).

Even though the code will run on the same hardware, PS and CS code will perform very differently based on the algorithms being implemented. One of the interesting things to look at is exposure and histogram data often used in HDR rendering. Calculating this data in the PS requires several passes and tricks to take all the pixels and either bin them or average them. Despite the fact that sharing data is going to slow things down quite a bit, sharing data can be much faster than running many passes and this makes the CS an ideal stage for such algorithms.

So What's a Tessellator?

This has been covered before now in other articles about DirectX 11, but we first touched on the subject with the R600 launch. Both R6xx and R7xx hardware have tessellators, but since these are proprietary implementations, they won't be directly compatible with DirectX 11 which uses a much more sophisticated setup. While neither AMD nor the DX11 tessellator itself are programmable, DX11 includes programmable input to and output from the tesselator (TS) through two additional pipeline stages called the Hull Shader (HS) and the Domain Shader (DS).

The tessellator can take coarse shapes and break them up into smaller parts. It can also take these smaller parts and reshape them to form geometry that is much more complex and that more closely approximates reality. It can take a cube and turn it into a sphere with very little overhead and much fewer space requirements. Quality, performance and manageability benefit.

The Hull Shader takes in patches and control points out outputs data on how to configure the tessellator. Patches are a new primitive (like vertices and pixels) that define a segment of a plane to be tessellated. Control points are used to define the parametric shape of the desired surface (like a curve or something). If you've ever used the pen tool in Photoshop, then you know what control points are: these just apply to surfaces (patches) instead of lines. The Hull Shader uses the control points to determine how to set up the tessellator and then passes them forward to the Domain Shader.

The tessellator just tessellates: it breaks up patches fed to it by the Hull Shader based on the parameters set by the Hull shader per patch. It outputs a stream of points to the Domain Shader, which then needs to finish up the process. While programmers must write HS programs for their code, there isn't any programming required for the TS. It's just a fixed function block that processes input based on parameters.

The Domain Shader takes points generated by the tessellator and manipulates them to form the appropriate geometry based on control points and/or displacement maps. It performs this manipulation by running developer designed DS programs which can manipulate how the newly generated points are further shifted or displaced based on control points and textures. The Domain Shader, after processing a point, outputs a vertex. These vertices can be further processed by a Geometry Shader, which can also feed them back up to the Vertex Shader using stream out functionality. More likely than heading back up for a second pass, we will probably see most output of the Domain Shader head straight on to rasterization so that its geometry can be broken down into screen space fragments for Pixel Shader processing.

That covers what the basics of what the tesselator can do and how it does it. But do you find your self wondering: "self, can't the Geometry Shader just be used to create tessellated surfaces and move the resulting vertices around?" Well, you would be right. That is technically possible, but not practical at this point.

Tessellation: Because The GS Isn't Fast Enough

Microsoft and AMD tend to get the most excited about tessellation whenever the topic of DX11 comes up. AMD jumped on the tessellation bandwagon long ago, and perhaps it does make sense for consoles like the XBox 360. Adding fixed function hardware to quickly and efficiently handle a task that improves memory footprint has major advantages in the living room. We still aren't sold on the need for a tessellator on the desktop, but who's to argue with progress?

Or is it really progressive? The tessellator itself is fixed function rather than programmable. Sure, the input to and output of the tessellator can be manipulated a bit through the Hull Shader and Domain Shader, but the heart of the beast is just not that flexible. The Geometry Shader is the programmable block in the pipeline that is capable of tessellation as well as much more, but it just doesn't have the power to do tessellation on any useful scale. So while most everything has been moving towards programmability in the rendering pipe, we have sort of a step backward here. But why?

The argument between fixed function and programmable hardware is always one of performance versus flexibility and usefulness. In the beginning, fixed function was necessary to get the desired performance. As time went on, it became clear that adding in more fixed function hardware to graphics chips just wasn't feasible. The transistors put into specialized hardware just go unused if developers don't program to take advantage of it. This made a shift toward architectures where expanding the pool of compute resources that could be shared and used for many different tasks became a much more attractive way to go. In the general case anyway. But that doesn't mean that fixed function hardware doesn't have it's place.

We do still have the problem that all the transistors put into the tessellator are worthless unless developers take advantage of the hardware. But the reason it makes sense is that the ROI (return on investment: what you get for what you put in) on those transistors is huge if developers do take advantage of the hardware: it's much easier to get huge tessellation performance out of a fixed function tessellator than to put the necessary resources into the Geometry Shader to allow it to be capable of the same tessellation performance programmatically. This doesn't mean we'll start to see a renaissance of fixed function blocks in our graphics hardware; just that significantly advanced features going forward may still require the sacrifice of programability in favor of early adoption of a feature. The majority of tasks will continue to be enabled in a flexible programmable way, and in the future we may see more flexibility introduced into the tessellator until it becomes fully programmable as well (or ends up just being merged into some future version of the Geometry Shader).

Now don't let this technical assessment of fixed function tessellation make you think we aren't interested in reaping the benefits of the tessellator. Currently, artists need to create different versions of their objects for different LODs (Level of Detail -- reducing or increasing complexity as the object moves further or nearer the viewer), and geometry simulation through texturing at each LOD needs to be done by pixel shaders. This requires extra work from both artists and programmers and costs a good bit in terms of performance. There are also some effects than can only be done with more geometry.

Tessellation is a great way to get that geometry in there for more detail, shadowing, and smooth edges. High geometry also allows really cool displacement mapping effects. Currently, much geometry is simulated through textures and techniques like bump mapping or parallax occlusion mapping or some other technique. Even with high geometry, we will want to have large normal maps for our lighting algorithms to use, but we won't need to do so much work to make things like cracks, bumps, ridges, and small detail geometry appear to be there when it isn't because we can just tessellate and displace in a single pass through the pipeline. This is fast, efficient, and can produce very detailed effects while freeing up pixel shader resources for other uses. With tessellation, artists can create one sub division surface that can have a dynamic LOD free of charge; a simple hull shader and a displacement map applied in the domain shader will save a lot of work, increase quality, and improve performance quite a bit.

If developers adopt tessellation, we could see cool things, and with the move to DX11 class hardware both NVIDIA and AMD will be making parts with tessellation capability. But we may not see developers just start using tessellation (or the compute shader for that matter) right away. Because DirectX 11 will run on down level hardware and at the release of DX11 we will already have a huge number cards on the market capable of running a subset of DX11 bringing with it a better, more refined, programming language in the new version of HLSL and seamless parallelization optimizations, we will very likely see the first DX11 games only implementing features that can run completely on DX10 hardware.

Of course, at that point developers can be fully confident of exploiting all the aspects of DX10 hardware, which they still aren't completely taking advantage of. Many people still want and need a DX9 path because of Vista's failure, which means DX10 code tends to be more or less an enhanced DX9 path rather than something fundamentally different. So when DirectX 11 finally debuts, we will start to see what developers could really do with DX10.

Certainly there will be developers experimenting with tessellation, but these will probably just be simple amplification to get rid of those jagged edges around curved surfaces at first. It will take time for the real advanced tessellation techniques everyone is excited about to come to fruition.

The final bit of DX11 we'll touch on is the update to HLSL (MS's High Level Shader Language) in version 5.0 which brings some very developer friendly adjustments. While HLSL has always been similar in syntax to C, 5.0 adds support for classes and interfaces. We still don't get to use pointers though.

These changes are being made because of the sheer size of shader code. Programmers and artists need to build or generate either a single massive shader or tons of smaller shader programs for any given game. These code resources are huge and can be hard to manage without OOP (Object Oriented Programming) constructs. But there are some differences to how things work in other OOP languages. For instance, there is no need for memory management (because there are no pointers) or constructors / destructors in HLSL. Tasks like initialization are handled through updates to constant buffers, which generally reflect member data.

Aside from the programmability aspect, classes and interfaces were added to support dynamic shader linkage to combat the intricacy of developing with huge numbers of resources and effects. Dynamic linking allows the application to decide at runtime what shaders to compile and link and enables interfaces to be left ambiguous until runtime. At runtime, shaders are dynamically linked and based on what is linked all possible function bodies are then compiled and optimized. Compiled hardware-native code isn't inlined until the appropriate SetShader function is called.

The flexibility this provides will enable development of much more complex and dynamic shader code, as it won't all need to be in one giant block with lots of "ifs", nor will there need to be thousands of smaller shaders cluttering up the developers mind. Performance of the shaders will still limit what can be done, but with this step DirectX helps reduce code complexity as a limiting factor in development.

With all of this - the ability to perform unordered memory accesses, multi-threading, tessellation, and the Compute Shader - DX11 is pretty aggressive. The complexity of the upgrade, however, is mitigated by the fact that this is nothing like the wholesale changes made in the move from DX9 to DX10: DX11 is really just a superset of DX10 in terms of features. This enables the ability for DX11 to run on down-level hardware (where DX11 specific features are not used), which when combined with the enhancements to HLSL with OOP and dynamic shader linking mean that developers should really have fewer qualms about moving from DX10 to DX11 than we saw with the transition from DX9. (Of course, that's nothing new: the first DX8 games shipped when DX9 was out, and it wasn't until DX10 that we saw a reasonable number of DX9 titles.)

To be fair, the OS upgrade requirement also threw a wrench in the gears. That won't be a problem this time, as Vista still sucks but will be getting DX11 support and Windows 7 looks like a better upgrade option for XP users than Vista. Developers who haven't already moved from DX9 may well skip DX10 altogether in favor of DX11 depending on the predicted ship dates of their titles; all signs point to DX11 as setting the time frame when we start to see the revolution promised with the move to DX10 take place.


In F.E.A.R. 2: Project Origin™, a routine mission turns into a fight for survival when an explosion of unknown origin decimates the city and unleashes the wrath of Alma Wade. Her terrifying power threatens to surge out of control unless Special Forces Sgt. Michael Becket and his squad can find a way to destroy her.

  • Fears to be faced: Test your nerves and face your FEARS as you battle new characters and unravel a terrifying mystery in a continuation of the Alma Wade storyline.
  • Strategic combat: Slow time using your character's improved reflexes, and use the environment to create instant cover or remove obstacles. These strategic environmental combat opportunities are available to both you and your enemies.
  • Intense action: It's in your face close-quarter action in a variety of indoor and outdoor locations, with all-new enemies that employ advanced combat tactics, behaving realistically and using the environment against you.
  • Multiplayer: Play with and against friends in multiplayer competition.
  • Stunning graphics: The graphics engine takes action horror to new heights through enhanced visuals and effects.

System Requirements:

Minimum:
CPU: P4 2.8GHz (3.2GHz Vista)/Athlon 64 3000+ (3200+ Vista)
GPU: Fully DX9-compliant graphics card with 256MB (SM 2.0b). NVidia 6800 or ATI X700.
Memory: 1GB (1.5GB Vista)
HDD: 12GB
OS: Windows XP SP2/Vista SP1
DirectX: 9.0c
Sound: DX9.0c compliant
Optical drive: DVD (boxed only)
Internet: Broadband

Recommended:
CPU: Core 2 Duo 2.2GHz processor family/Athlon 64 X2 4400+
GPU: Fully DX9-compliant graphics card with 512MB (SM 3.0). NVidia 8600 GTS or ATI HD 2900 XT.
Memory: 1.5GB
HDD: 12GB
OS: Windows XP SP3/Vista SP1
DirectX: 9.0c
Sound: DX9.0c compliant
Optical drive: DVD (boxed only)
Internet: Broadband (768kbit/sec upstream required to host 16 players)



Release date: Next week February 10th & 13th, 2009

SAN FRANCISCO (Reuters) - Google Inc added a voice and video chat feature to its Gmail email service on Tuesday, launching a free Web-based service that competes with the likes of eBay's Skype.

Gmail and Google App subscribers can now choose to speak with friends on a video screen and simultaneously instant message them in a Google Chat box.

The video screen can be popped out of the chat box and moved around a user's computer screen. Users can also change the size of the screen and expand it to full-screen size.

"The idea was to make it quicker and easier to communicate with other people by whatever means is best convenient," said Google spokesman Jason Freidenfelds.

"It's a nice alternative for businesses looking for another way for people to connect," he added.

The feature is available for both PC and Apple computer users.

A webcam and small web browser plug-in are required to use the video chat. Users who do not have a webcam will still be able to chat with friends by voice.


Microsoft Corp is betting its next Windows operating system will be faster and easier to use and avoid the missteps of Windows Vista that alienated many users of the software that powers 90 percent of the world's PCs.

Windows 7, which was previewed on Tuesday, is set to be introduced in a test version early next year with features including touch screen technology and the ability to more easily personalize the system.

Windows Vista was so heavily criticized due to poor compatibility with devices and slow start speeds that it became the target of an effective marketing campaign by rival Apple Inc.

In addition, the usefulness of a traditional Windows desktop operating system, the world's largest software maker's most profitable product, is being challenged as more software applications move online, highlighting the central role of Internet browsers in a world centered on the Web.

Microsoft decided to measure success by a positive user experience versus technical superiority -- often overlooked by ordinary consumers.

Julie Larson-Green, a Microsoft corporate vice president in charge of overseeing the design of Windows 7, said: "It's fine to have the best technical solution. But just like VHS and Beta (Betamax), the best technical solution doesn't always matter," referring to the video format battles in the late 1970s and early 1980s.

The company also adopted a 'simple is better' philosophy, looking to remove complexity from an operating system that incorporated 50 million lines of programing code in Vista.

"The general perception is that Vista is a damaged brand, so it behooves Microsoft to move on to sell something new even if it's not a quantum leap in terms of technology," said Toan Tran, analyst at Morningstar.

SUCCESS DEFINED BY USERS

Microsoft plans to introduce more user-friendly features, such as a new taskbar that previews all the open windows from a single application by hovering over the program's icon.

Another new feature is called "Jump Lists," which provides updated lists of recently worked-on documents or often visited Web sites without first having to open Microsoft Word or an Internet browser.

"People aren't coming to Windows to use Windows. People are coming to Windows to get to what they want to do. Helping them get to what they want to do is the goal of the operating system," said Larson-Green.

Larson-Green came over from the Office group with Steven Sinofsky, who took over Windows development with a reputation as a disciplined task master with a focus on simplifying the user interface.

To keep the team focused, every Windows 7 engineer was handed a pamphlet of core principles with Zen-like slogans such as "reduce concepts, increase confidence," and "small bad and good things matter."

The new philosophy at Windows is a nod to the success of Apple, which has seen its U.S. market share double since 2005 due in part to an advertising campaign that has portrayed Vista as clunky and harder to use.

Microsoft has countered with a $300 million marketing blitz featuring comedian Jerry Seinfeld, rapper Pharrell Williams, writer Deepak Chopra and Microsoft co-founder Bill Gates, looking to emphasize the reach and diversity of Windows users.

Windows Vista has sold more than 180 million licenses since its launch in January 2007, but Microsoft executives have said privately that the software over-promised and under-delivered, a problem that they say will not be repeated with Windows 7.

Windows 7 aims to keep hardware requirements in line with that of Vista so that companies do not need to buy special machines to run the new operating system.

Microsoft said it has also solved the compatibility problem with devices that plagued Vista at its launch with a new feature called Device Stage, a one-stop point to manage and gather information for devices from mobile phones to printers to digital music players.

Shares of Microsoft rose $1.06, or 5 percent, to $22.24 in afternoon NASDAQ trade.

(Source: Reuters)

Oct 25, 2008

Bad Vista Tweaks

Well i was very skeptical about Vista in the past but it doesn't seem that bad after all. Anyway i must inform you that i made my own tweaked Vista dvd and installed from there (all ram hungry and yseless services were removed, as the annoying UAC, Firewall and Defender cause i am using third party anyways. Total size of the DVD is 1.2GB compared to 2.6GB of the original wich was full of useless drivers which we have to update to the latest versions from the manufacturers websites, so there was really no point in keeping them... or the support for chineese LOL.

Some Vista tweaks found all over the internet can do more harm than good. They won't kill your windows, blow up your dog or date with your wife(small chance though) but they may hurt performance. Some of them may have worked with older Windows versions, but are redundant now. Frankly speaking, the best "tweak" is to throw RAM at it ! Or else even one simple thing like 'reducing start ups' will make a lot of difference in performance !

Always Unload DLL (Disable DLL Caching) to free up memory and improve performance. Using this tweak on Windows 2000, XP or Vista has absolutely no effect. This registry key is no longer supported in all post-2000 Windows OS's.

Cleaning the Prefetch Folder. Every time you clean up the Prefetch folder, you delay application load times, the next time you launch them. Its only after the second time that you regain optimal application load times. Only one Prefetch file is created per application . Windows cleans this folder at 128 entries, down to the 32 most used Application's prefetcher files. In Vista this folder does not occupy more than around 50MB. Cleaning the Prefetcher can therefore be construed actually as a...a temporary self-inflicted un-optimization ! Now why would you want to do that ! The developers of the memory management system of Windows Vista have done a good job...no question about this one.

Disabling Certain Services. Don't take this advice to its extremes, for in fact this could actually cripple your system ! For instance Disabling the task Scheduler to improve performance actually prevents the Prefetcher and the Layout.ini file from forming or being updated ! Forcing, inter alia, longer application startup times. Never ever shutdown the System Restore Service...never know when it may save your day ! Disabling the DNS Client Service may decrease the the overall performance of the client computer, and the network traffic for DNS queries increases if the DNS resolver cache is deactivated. This effectively reduces Internet Performance for sites you have previously visited and puts an unnecessary load on your ISP's DNS server.
Simply use a safe Program like Tune-Up Utilities. Shutting down services indiscriminately is a sure shot prescription for trouble !

Page (Swap) File Tweaks. "Create a Fixed Size Page File to improve performance" : This was relevant in the earlier days of Windows; Definitely irrelevant for Vista ! "Eliminate your Page File completely, if you have a large amount of memory installed" : There are simply NO published benchmarks establishing any performance gains from doing so ! And in any case Windows wasn’t designed to run without a page file.

The ReadyBoost Tweak. Several ways being suggested on the net as to how to make ur USB compatible with some hacks/tweaks. Here is one for example :
1. Plug the device and open the device properties : Start > My Computer > Right click Device > Properties > Readyboost Tab
2. Select, “Stop retesting this device when I plug it in.” Remove the device.
3. Open Regedit : Start > Type regedit in the search bar
4. Go to HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft /
Windows-NT / CurrentVersion / EMDgmt
Change the Device Status to 2, ReadSpeedKBs to 1000, WriteSpeedKBs to 1000.
5. Re-Plug the device. Readyboost should work.
But using such methods only fools Vista into thinking that such USB drive are compatible. Expect no performance gains in such cases !

"How to turn the PC 'on' in 10 seconds" ! Modifying the regkey HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Control\ ContentIndex some claim makes your PC start in 10 secs ! Changing the default value of its '"Startup Delay/Decimal" from 4800000 to 40000 makes this happen; are the claims.
This has nothing to do with the time it takes for windows to load, only the duration that the welcome screen shows up. And its is my opinion that this is best left at its default value, as a certain delay in startup is required so that necessary programs & services can be fired up properly.


Here is a link to a reliable service configuration site "BlackViper" and the top 9 tweaks for a better Vista experience

On wednesday New York Times wrote an article where they describe Intel's position against Vista stating:

Large companies routinely hold off a year or so after a new version of Windows is introduced before adopting it, waiting for initial bugs to be eliminated and for applications to be written. “But by 18 months, you’d expect to see a significant uptake, and we haven’t seen that,” said David Smith, a Gartner analyst. “There’s not much excitement.”
Microsoft states that there are 140million Vista systems at the moment worldwide (because many of the pre-build systems have Vista by default and they don't know if ppl installed something else on them or not).

Well if i were in Microsoft's shoes i would be a bit embarrased that a huge company like Intel (which have written large portions of the source-code for vista) admit they won't use Vista on their corporate machines. Another slap for Vista from possibly the biggest company to ever go public about not using the "new & cool" o/s. Surprinsingly enough many of Intel's machines use the o/s from Apple (LOL)... so they prefere using the competition rather than their own work.

Maybe they will use Windows 7
which is scheduled to go on sale in January 2010, cause the 7 years old XP is already out of "production and support" since Vista launched as MS told us, allthought they released a SP3 for it that was the last we're gonna hear from it...

Now... if Windows 7 will be a "Windows ME reloaded" as some rumours have it then the only options will be to either remain on an 9 years old operating system (in 2010) or switch to alternatives from Apple or Linux. Anyway's till then i'm very happy with my XP/Ubuntu dual-boot which i would not delete for anything in the world.
As a sidenote i only have the NTFS partition cause the webcam support is kinda bad and many "newer" games dont realy work that good on Linux, though i have a feeling that will change till the end of this year cause skype for Linux already supports videochat (not too good right now but it's decent).
I see the Windows -> OSX/Linux transition like the IE-> Firefox/Opera/Safari transition... where people realised that open-source applications are lots of times better than the ones we're paying hundred of dollars. How many years will it take to escape the "Windows Monopol?"... no one knows actually but i predict 2015 as a good start for BIG changes, but again... who knows how computers will look like in 7 years? GPU's wanna take off the load from the CPU's... others wanna integrate RAM into the CPU and the number of cores doubles on a 1-2 years basis.

We shall live and see... oooook who wants to play some Mario on the old TV-hooked Nintendo box? hehehehehe...

With Internet Explorer 8 now available, can Microsoft hope to retain market dominance over fierce open source rivals such as Mozilla FireFox or the feature packed Opera web browser

FireFox was the browser that grew and grew in these years. Every year capturing an even larger market share percentage than before. More user friendly than most of its rivals along with high security levels and arguably more intelligent programming helped its popularity. With such a large programming community behind it, updates have always been regular and add on programs/features are often released. It prides itself on being the peoples browser. It currently has a 28.38% market share.

Apple computers have had their own browser since the mid 1990's – Safari - complete with its own problems, such as (until recently) the inability to run Java scripts. However most Apple users seemed happy with it and a version capable of running on Windows has been released. It has had no major competitor on Apple Macs, and as such has largely been out of the Browser Wars. It currently holds a 2.54% market share and is slowly increasing.

Internet Explorer's market share has dropped from over 90% to around 75%, and is falling. It will be interesting to see what Microsoft will attempt to regain such a high market share.


The Future of Web Browsing

Web browsers come and go. It is the nature of technology (if such a term can be used), to supplant inferior software in very short periods of time. It is almost impossible for a single company to stay ahead of the competition for long. Microsoft have the advantage of being able to release IE with any Windows using PC. That covers over 90% of the market. They also have the advantage of unprecedented resources. They can compete how they wish for as long as they wish. So there is no counting IE out of the future of web browsing.

Safari is in a similar position, being easily the most popular Mac web browser. Its long term survival is dependent upon Apple and the sale of their computers.

These are the only two browsers that are almost guaranteed another five years of life, at least. FireFox may seem like another candidate, but the public is fickle, and one bad release, or if it seriously lags behind the new Internet Explorer 8 for long, could easily see its popularity quickly descend into virtual oblivion.

However, it seems likely community driven browsers, such as Mozilla and FireFox, will be the only types of browser capable of competing with the wealthy Internet arm of Microsoft in the near future.

As for web browsing itself, will it change any time soon? Well it already has for some online communities. For example, if you want to buy clothes you could try entering an online 'world' creating an online virtual You to go from 'shop to shop' with, looking at products and trying/buying what you see. Some 'worlds' allow you to recreate yourself accurately including weight and height and then try on things apparel such as jeans to give you an idea of how you would look in that particular item.

Mozilla FireFox's market share has grown for each growth period since inception, mostly at the expense of Internet Explorer. Internet Explorer has seen a steady decline of its usage share since FireFox's release. By early 2008, Firefox had approximately 15% global usage share of web browsers. Market shares break down as following: 43% for Internet Explorer 7, 30% for Internet Explorer 6, 18% for Firefox 2.0, 4% for Safari 3.0, and less than half a percent for both Firefox 1.x and Internet Explorer 5.x versions.

The user market needs something "fresh" and "out-of-the-box" thinking right now...
  • Firefox is very close to that with the new "FireFox3" with better RSS support, search, security fixes and lots of useful plugins.
  • Opera 9.5 doesn't seem to have much improvements for the "Web 2.0 standard"
  • Internet Explorer 8 well... not even bugfixes over the previous versions and many websites look strange or out of place when it's used. They rely on the fact that many people don't know how or are "afraid" of a change.
We shall live and see what will happen in the end...

Chicago (IL) - It was clear yesterday that Mozilla is likely to achieve its goal to become part of the book of Guinness World Records with the most downloaded software within 24 hours. The download pace has slowed considerably on day 2, but allowed the company to cross the 10 million mark in less than 48 hours.

Even before Firefox was unveiled on Tuesday, Mozilla’s servers were mostly unreachable. It turned out to be a minor hiccup for the organization’s Download Day campaign, which resulted, according to our observations, in about 7.5 to 7.7 million downloads within the first 24 hours the browser became available on Mozilla’s FTP server. The HTTP count started a bit later and lasted a bit longer and ended up, according to Mozilla, at about 8 million downloads, which should be enough for the browser to claim its world record. It will take about a week until the numbers will be officially confirmed.

"Thanks to the support of the always amazing Mozilla community, we got more than 8 million Firefox 3 downloads in 24 hours. That’s more Firefox downloads than we’ve ever had in a single day - an impressive feat indeed! Please be patient while the good people of Guinness review our World Record attempt. This might take a few days so please check back here. And, a huge thanks for all of your support," wrote Mozilla on its Firefox Download page.

Over 3.43 million downloads came from the US, but other countries also contributed, such as Canada (313,000), China (247,000), Russia (144,000), France (391,000), Spain (400,000), Iran (268,000), India (132,000), Italy (330,000) and almost a million from Germany.

Downloads crossed the 10 million mark on day 2 and stood at 11.7 million after 48 hours.

To promote Firefox 3, Mozilla has created Download Day campaign designed to persuade users to download Firefox 3 the same day as it ships in an effort to set the Guinness World Record as the most downloaded software in 24 hours

Chicago (IL) - The British Music Rights published a new study on digital music usage trends that sheds new light on piracy issues. You would expect once again scary numbers of how many music files have been downloaded and how damaging the digital music age is for the music industry. However, this study actually found that music publishers and artists should be very upbeat on current trends and the fact that young adults are willing to put a "considerable value" on music, if the right service is offered. Music industry, are you listening?

By now, we are used to surveys and research estimating the potential impact of the legal and illegal digital music distribution models in place today. Every new research draws quite some attention, since there is always an expectation of news how much music is pirated. The claim of piracy creates tension and traditionally has sparked heated discussions between the music industry and consumers. This time it may be different, as the findings published of the British Music Rights do not reflect the typical result of this type of survey.

Most importantly, the British Music Rights, which hired the University Of Hertfordshire to conduct the survey, claims that young adults (ages 18 - 24, average age 22) are actually willing to pay for music if they’re offered an attractive service model.

According to the survey, which ended as the largest UK academic survey of its kind, MP3 players are no ubiquitous, with almost 90% of respondents stating that they own some sort of digital music playback device, such as an iPod, mobile phones, car stereos or game consoles. The typical MP3 player holds 1770 music tracks. Statistically, 885 of those have not been paid for.

P2P and friends are now the primary source of music

Widespread broadband internet access and the convenience of digital downloads have contributed to an enormous amount of music now being illegally copied from peer-to-peer networks. 63% of respondents are downloading their music from P2P file-sharing networks and 42% allow or have allowed other P2P users to download music from their computer. Another popular way of getting the latest music is by copying it from a friend’s hard drive (58%) or some other way (95%). Researchers have concluded that "much of this behavior is viewed as altruistic."

More than half of the respondents either download their music from P2P networks or copy it from their friends, indicating that music copied from P2P networks further spreads among friends. However, not all hope is lost for the music industry as an astonishing 60% said they continue to buy CDs. The CD isn’t quite dead yet.

80% of respondents who admitted to illegally file-sharing said they are prepared to engage with a legal file-sharing service and place a "considerable monetary value on it." The survey also found that young adults place different values on music formats. The least valuable version is streaming music and the CD the most valuable. Digital music files came in "somewhere in the middle." 60% of the total music budget is being spent on live music.

Feargal Sharkey, chief executive officer of British Music Rights said that "the music industry should draw great optimism from this groundbreaking survey. First and foremost, it is quite clear that this young and tech-savvy demographic is as crazy about and engaged with music as any previous generation. Contrary to popular belief, they are also prepared to pay for it too. But only if offered the services they want. That message comes through loud and clear."

Read on the next Page: Music industry caught dozing, RapidShare is the new Napster

Music industry caught dozing

The iTunes Store, Apple’s five years-old digital-only music store, has been reported to have sold more music in the U.S. than Wal-Mart who sells both physical CDs and digital download - at least in one month. The service sold over four billion music tracks since its inception and so far, no other download store has been able to break iTunes’ dominance. With physical CD sales declining each year, it seems to be just a question of time when the physical format will be extinct in favor of digital downloads. While the music industry is doing everything it can to stay relevant and protect its distribution channels, publishers have no convincing replacement service on their own.

Digital distribution makes it easy to get music from the P2P networks with a few mouse clicks, or plugging a USB flash drive in your friend’s computer to copy music tracks. And even if this basic behavior has been around for decades - remember LPs and tapes? - the convenience of copying music in the digital age spooked music executives who initiated lawsuits against end users. These lawsuits and negative advertising had some effect, but this strategy can’t hide the fact that the music industry has not yet found the key to solve the problem of music mass piracy. Many are still waiting for a service that is convincing enough to pull music pirates away from illegal download services.

And while the music industry fought a relentless war against Napster and other file-sharing networks in the past years, a new piracy problem appears to be more apparent every day: The new generation of file-sharing networks may prove to be much harder to crack.

RapidShare is the new Napster

Although most illegal P2P services are closed down, more than 50% of teenagers still download music illegally. So, where does this music come from? There are still plenty of download services available, especially one that largely has been operating under the radar of music executives - RapidShare. This membership based file-sharing network has quickly grown into a place where users post almost any conceivable premium content that can be distributed digitally, from music and movies to software, electronic books and image files of the latest videogames. Yes, RapidShare exchange their own content as well and RapidShare deletes a substantial amount of content that has been determined as being illegal, but it is hard to deny just how much copyrighted material is available on RapidShare.

Why doesn’t the industry simply shut down RapidShare? There have been limited efforts to do so, but the law does not seem to be clear cut in this case and legal proceedings take time. Also, RapidShare takes advantage of a similar loop hole that makes YouTube possible, although millions of copyrighted videos are distributed on the service every day. Under the DMCA, content creators and owners are required to alert a service owner, such as YouTube, Blogger or RapidShare to remove copyrighted content in a relatively time consuming process. The sheer amount of videos shared each day implies that it is virtually impossible to spot everything that has been posted right away. This scenario prompted media conglomerate Viacom to threaten Google with a billion dollar lawsuit, which Google answered with a video fingerprinting technology for automatic detection of copyrighted content.

Trends towards legal file sharing

In the meantime, the University Of Hertfordshire researchers say that music industry should meet the survey with great enthusiasm, explaining that cash spent on live music exceeds cash spent on recorded music.

"Technology has greatly increased the value of these activities - but it is clear that the financial gains are not necessarily feeding back to the creators: artists, composers and songwriters," he said. "How the music industry repositions itself here, and builds new mutually-beneficial commercial partnerships with technology providers remains the key challenge ahead," Sharkey said.

Sharkey warned the impression of people not willing to pay for music may be wrong. Instead, he suggests that a wrong approach pursued by the music industry has a substantial impact on the behavior of young adults - and not necessarily the one the music industry would want. The right service for a new generation of music buyers in fact may be the most efficient tool to battle music piracy in the end.