Monday, October 31, 2011

Human Body Specifications - Cardiac

Weight - BMI (Body Mass Index)
BMI is a measurement of body fat based on height and weight that applies to both men and women between the ages of 18 and 65 years.

BMI = ( Weight in Pounds / ( Height in inches x Height in inches ) ) x 703
BMI = ( Weight in Kilograms / ( Height in Meters x Height in Meters ) )

BMI related diseases (http://www.bmi-calculator.net/bmi-related-disease.php)

Heart Rate
Maximum Heart Rate (HR) is about 220 minus your age.

The American Heart Association recommends that you do exercise that increases your heart rate to between 50 and 75% of your maximum heart rate (your maximum heart rate is 220 beats per minute, minus your age). They recommend getting at least 30 minutes of exercise on most days of the week (AHA, 2006).

Blood Pressure
Blood Pressure is the force of the blood against the walls of arteries. It includes two measurements:
Systolic pressure (top number): The pressure as the heart beats and forces blood into the arteries
Diastolic pressure (bottom number): The pressure as the heart relaxes between beats
Average value for young people: 120/80 mmHg
Average value for old people: 140/90 mmHg

Healthy blood vessels dilate to allow more blood to flow through more easily. When you exercise, your heart speeds up so the blood can reach your muscles. It may be possible for your heart rate to double safely, while your blood pressure may respond by only increasing a modest amount. When you stop exercising, your pulse does not immediately return to normal; it gradually returns to its resting level. The greater your fitness level, the sooner your pulse rate will return to normal.

(Ref: http://www.medindia.net/patients/calculators/bp_chart.asp)

Health Tools:
http://www.medindia.net/patients/calculators/index.htm

Thursday, October 20, 2011

Direct3D - DirectX

Direct3D uses hardware to perform advanced graphics computing, including z-buffering, anti-aliasing, alpha blending, mipmapping, atmospheric effects, and perspective-correct texture mapping, if it is available on the graphics card. It offers full vertex software emulation but no pixel software emulation for features not available in hardware.

The aim of Direct3D is to abstract the communication between a graphics application and the graphics hardware drivers. It provides a low-level interface to every video card 3D function (e.g. transformations, clipping, lighting, materials, textures, depth buffering). It is presented like a thin abstract layer at a level comparable to GDI.

History
Direct3D 8.0 introduced programmability in the form of vertex and pixel shaders. Its programmable shading capabilities were the first major departure from an OpenGL-style fixed-function architecture, where drawing is controlled by a complicated state machine. Direct3D 8 contained many powerful 3D graphics features, such as vertex shaders, pixel shaders, fog, bump mapping and texture mapping.

Direct3D 9.0 added a new version of the High Level Shader Language, support for floating-point texture formats, Multiple Render Targets (MRT), and texture lookups in the vertex shader.

HLSL is analogous to the GLSL shading language used with the OpenGL standard. It is the same as the Nvidia Cg shading language.

Direct3D 10 defines a minimum standard of hardware capabilities which must be supported for a display system to be "Direct3D 10 compatible". The API features an updated shader model 4.0 and optional interruptibility for shader programs. In addition to the previously available shader stages, the API includes a geometry shader stage that breaks the old model of one vertex in/one vertex out.

HLSL programs come in three forms, vertex shaders, geometry shaders, and pixel (or fragment) shaders. A vertex shader is executed for each vertex that is submitted by the application, and is primarily responsible for transforming the vertex from object space to view space, generating texture coordinates, and calculating lighting coefficients such as the vertex's tangent, binormal and normal vectors. Optionally , geometry shader takes as its input the three vertices of a triangle and uses this data to generate (or tessellate) additional triangles, which are each then sent to the rasterizer. Group of vertices (normally 3, to form a triangle) come through the vertex shader, their output position is interpolated to form pixels within its area; this process is known as rasterisation. Each of these pixels comes through the pixel shader, whereby the resultant screen colour is calculated.

Direct3D 10 features:
  • Programmable pipelines (often referred to as unified pipeline architecture)
  • New state object to enable (mostly) the CPU to change states efficiently
  • Shader model 4.0 adds instructions for integer and bitwise calculations
  • Geometry shaders, which work on adjacent triangles which form a mesh
  • Texture arrays enable swapping of textures in GPU without CPU intervention
  • Rapid occlusion culling - prevents objects from being rendered if it is not visible or too far to be visible
  • Instancing 2.0 support, allowing multiple instances of similar meshes, such as armies, or grass or trees, to be rendered in a single draw call
Direct3D 10.1 features:
  • Finer control over antialiasing (both multisampling and supersampling with per sample shading and application control over sample position)
  • More flexibilities to some of the existing features (cubemap arrays and independent blending modes)
  • hardware must support the following:
  • - Mandatory 32-bit floating point filtering
  • - Mandatory support for 4x anti-aliasing
  • - Shader model 4.1
  • - In 2011, Intel chipsets started supporting Direct3D 10.1 with the introduction of HD graphics 2000 (GMA HD)
Direct3D 11 was released as part of Windows 7, features:
  • Tessellation — to increase at runtime the number of visible polygons from a low detail polygonal model
  • Multithreaded rendering — to render to the same Direct3D device object from different threads for multi core CPUs
  • Compute shaders — which exposes the shader pipeline for non-graphical tasks such as stream processing and physics acceleration, similar in spirit to what OpenCL, Nvidia CUDA, ATI Stream achieves, and HLSL Shader Model 5 among others
  • Two new texture compression algorithms for more efficient packing of high quality and HDR/alpha textures
  • Increased texture cache
Direct3D 11.1 is an update to the API that will initially ship with Windows 8, features:
  • Shader tracing
  • Support for video playback
  • Shader processing of video resources
  • On-the-fly swapping between Direct3D 10 and 11 contexts and feature levels
  • Minor updates to the shader language, such as
  • - larger constant buffers and optional double-precision instructions,
  • - improved blending modes and mandatory support for 16-bit color formats to improve the performance of entry-level GPUs such as Intel HD Graphics

Wednesday, October 19, 2011

Cost Effective Notebook PC for Gaming

3DMark06 - DirectX 9.x
3DMark06 includes advanced Shader Model 2.0 and 3.0 graphics tests as well as single CPU, multiple core and multiple processor tests as part of the 3DMark score.
1. SM2.0 Graphics Test 1 : Lighting (total 26 lights)
  • Two directional with one casting CSM (Cascading Shadow Maps),
  • 12 point lights provide fill, most cast shadows using 1024x1924x6 cube depth maps and hardware shadows, some are masked and animated
  • 12 small spot lights with non-overlapping shadow-maps
2. SM2.0 Graphics Test 2: CSM & shadow-mapped lighting
  • One directional light casting CSM to create a moonlight effect
  • Two illuminated fireflies are shadow-mapped point lights with cube-map masks
  • A procedural light scattering shader
  • Materials have Blinn-Phong reflections using lookups for materials
  • Ground material has diffuse, diffuse detail, normal and normal details maps added
  • Rock surfaces have an added specular map
  • Branches are similar to the rock materials but with an added diffuse cube map and no specular or bump map
3. SM3.0 Graphics Test 3: HDR (High Dynamic Range) rendering and dynamic shadows
  • Sky and atmospheric effects rely on a complex atmospheric light scattering algorithm with cloud blending
  • Heterogeneous fog effect creates deep humidity
  • Water effects are recreated using HDR reflections and refractions
  • Water surface is distorted with two scrolling maps and Gerstner wave functions
  • Subsurface scattering and a Blinn-Phong shading model with two normal maps and one color map are used for the sea-monster
  • Strauss shading is used for the captain, crew and airship
  • Canyon wall material uses three color maps, three normal maps and Lambertian diffuse shading
  • One directional light, casting CSM is used to create the bright sunlight, producing dramatic dynamic shadows
4. SM3.0 Graphics Test 4: CSM with dynamic long, soft shadows
  • As the sun sets, shadows dynamically increase in length for a very realistic effect
  • Snow storm - heterogeneous fog and particles with an added diffuse cube map
  • Blinn-Phong shader with two normal maps, one color map and subsurface scattering is used for the snow material
  • Metallic and other surfaces use the Strauss shading model
  • One directional light casting CSM recreates the sunlight.
  • Blending a pair of cube-maps, (one diffuse, the other specular) an ambient effect is created
5. CPU Test 1: tight AI synchronization intervals
  • AI, physics and game logic to generate a multi-threaded workload. Uses a high level of path finding complexity, tight AI synchronization intervals over 40 frames, locked to fixed frame rate of 2FPS with a Shader Profile of 2_0 and a resolution of 640x480
6. CPU Test 2: lax AI synchronization intervals
  • Uses a lower level of path finding complexity, lax AI synchronization intervals over 60 frames, locked to a fixed frame rate of 2FPS with a Shader Profile of 2_0 and a resolution of 640x480
7. Feature Tests
  • Fill Rate (single-texturing)
  • Fill Rate (multi-texturing)
  • Pixel Shader
  • Vertex Shader (simple)
  • Vertex Shader (complex)
  • Shader Particles
  • Perlin Noise
Pixel Fill Rate
Pixel fill rate is the total number of pixels the card can output and is calculated as the number of raster operations (ROPs) multiplied by the clock frequency.

Texture Fill Rate
Texture fill rate is calculated differently by ATI and Nvidia. Both are correct methods as Nvidia has one texture unit per pixel shader unit or one per pixel pipe.
  • Nvidia multiplies the number of pixel pipelines by the clock frequency.
  • ATI multiplies the number of texture units by the clock frequency.
The most cost effective Notebook PC for gaming is : Intel i5 with NVIDIA GT540M

Baseline : MacBook Pro 13" mid 2009; w1 = 0.35, w2 = 0.65

Friday, October 14, 2011

MacBook Pro, 13-inch Mid 2009

MacBook Pro, 13-inch Mid 2009 (MacBookPro 5,5) OSX 10.7.2
Intel Core 2 Duo P7550 @2.266GHz
- 2 cores, 2 threads
- L1 cache, 32KB + 32KB
- L2 cache, 3MB
- SIMD, 1
- Fab, 45nm
- FSB, 266MHz
- Bus/Core rate, 8.5
- HT/QPI/DMI, 1066MHz
- Instruction set, 64-bit
- Max TDP, 25W
- Floating Point:
Dot Product single-threaded scalar -- 3088, , 1.49 Gflops
Dot Product multi-threaded scalar -- 6435, , 2.93 Gflops
Dot Product single-threaded vector -- 2470, , 2.96 Gflops
Dot Product multi-threaded vector -- 5628, , 5.85 Gflops

NVIDIA GeForce 9400M, 256MB
OpenGL 2.1 NVIDIA-7.12.9,
OpenCL 1.1 (July 25 2011) Full_Profile
Shading Language v1.2
Max texture size: 8192 x 8192

Max texture coordinates: 8

Max vertex texture image units: 16

Max texture image units: 16

Max geometry texture units: 16

Max anisotropic filtering value: 16

Max number of light sources: 8

Max viewport size: 8192 x 8192

Max uniform vertex components: 4096

Max uniform fragment components: 4096
Max geometry uniform components: 2048

Max varying floats: 60

Max samples: 8

Max draw buffers: 8

Mobile Processors - Benchmarks


GPU - Specifications
1. xx:xx:xx:xx - Vertex shader : Pixel shader : Texture mapping unit : Render Output unit
2. xx:xx:xx - Unified Shaders (Vertex shader/Geometry shader/Pixel shader) : Texture mapping unit : Render Output unit

NVIDIA

AMD

Xbox

Xbox
Bill Gates unveiled the Xbox at the Game Developers Conference in 2000. At that time, Sega's Dreamcast sales were diminishing and Sony's PlayStation 2 was just going on sale in Japan.

The Xbox was the first gaming product to feature Dolby Interactive Content-Encoding Technology, which allows real-time Dolby Digital encoding in game consoles. Previous game consoles could only use Dolby Digital 5.1 during non-interactive "cut scene" playback.

The system software may have been based on the Windows NT architecture that powered Windows 2000. It exposes APIs similar to APIs found in Microsoft Windows, such as DirectX 8.1.

A derivative of the NVIDIA GeForce 3, known as the NV2A (233MHz), co-developed by Microsoft and Nvidia was used in the Microsoft Xbox game console. GeForce 3 was the first Microsoft Direct3D 8.0 compliant 3D-card. Its programmable shader architecture enabled applications to execute custom visual effects programs in Microsoft Shader language 1.1. With respect to pure pixel and texel throughput, the GeForce 3 has four pixel pipelines which each can sample two textures per clock. Features:
- Lightspeed Memory Architect (LMT) - reduce overdraw, conserve memory bandwidth by compressing the z-buffer (depth buffer) and better manage the memory bus.
- support multi-sampling and Quincunx anti-aliasing
- texture sampling units were upgraded to support 8-tap anisotropic filtering, distant textures can be noticeably sharper

NV2A: (Nvidia ceased production of the Xbox's GPU in August 2005)
- 4 pixel pipelines with 2 texture units each
- 932 megapixels/s (233 MHz × 4 pipelines)
- 1,864 megatexels/s (932 MP × 2 texture units)
- Peak triangle performance (32pixel divided from filrate)
= 932M/32 = 29,125,000 32-pixel triangles/s raw or w. 2 textures and lit.
= 970,833 triangles per frame at 30 frame/s
- Bilinear, trilinear, and anisotropic texture filtering
- 8 textures per pass, texture compression, full scene anti-aliasing (NV Quincunx, supersampling, multisampling)
- 64 MB DDR SDRAM at 200 MHz; in dual-channel 128-bit configuration giving 6400 MB/s

CPU: 32-bit 733 MHz, custom Intel Pentium III Coppermine-based processor.
- SSE floating point SIMD. Four single-precision floating point numbers per clock cycle.
- MMX integer SIMD
- 32 KB L1 cache. 128 KB on-die L2 cache
- uses uses out-of-order execution
- 133 MHz 64-bit GTL+ front-side bus to GPU

Xbox 360
The Xbox's successor, the Xbox 360, was officially unveiled announced on May 12, 2005. Xbox 360 uses the triple-core IBM designed Xenon (the cores of the processor were developed using a slightly modified version of the PlayStation 3's Cell Processor PPE architecture) as its CPU, with each core capable of simultaneously processing two threads, and can therefore operate on up to six threads at once. Graphics processing is handled by the ATI Xenos, which has 10 MB ofeDRAM. Its main memory pool is 512 MB in size.

CPU: 3.2GHz Custom IBM Central Processor, named Xenon at Microsoft and "Waternoose" at IBM.
- triple-core, two threads per core
- VMX unit per core
- 128 VMX Registers per thread
- 1MB L2 Cache (Lockable by Graphics Processor)
- uses in-order execution
- 9.6 billion dot products per second
- Unified Memory Architecture (UMA), 700MHz GDDR3 512MB RAM, 128 bit interface
- 22.40 GB/s (=700MHz*2*128/8) of memory interface bus (FSB)

Xenos: Although R500 has long since been mentioned in relation to the graphics behind Xenon, the actual development name ATI uses for Xenon's graphics is "C1". The PC graphics processor R520 and Xenos are very different.

The Xenos graphics processor consists of two distinct elements: the graphics core (shader core) and the eDRAM module. Both units running at 500MHz within the single die.
- Unified Shader Core
- 48 ALU’s for Vertex or Pixel Shader processing
- 16 Filtered & 16 Unfiltered Texture samples per clock
- 10MB eDRAM frame buffer, 32 GB/s between the eDRAM die and the GPU, 500 MB/s south-bridge
- eDRAM internal logic to its internal memory bandwidth is 256 GB/s ==> 4× FSAA, z-buffering, and alpha blending with no appreciable performance penalty on the GPU
- 48 ALU operations (one vector4 and scalar op per clock), 16 texture fetches, 32 control flow operations, and 16 programmable vertex fetch operations with tessellation per clock = 48*2 + 16 + 32 + 16 = 160 operations per cycle or 160 * 500 = 80 GOps per second

The Xbox 360 launched with 14 games in North America and 13 in Europe. The console's best-selling game for 2005, Call of Duty 2, sold over a million copies. Five other games sold over a million copies in the console's first year on the market: Ghost Recon Advanced Warfighter, The Elder Scrolls IV: Oblivion, Dead or Alive 4, Saints Row, and Gears of War.

Xbox 360 S was officially announced on June 14 2010, marketed simply as the Xbox 360, feature redesigned internal architecture with the Valhalla motherboard, which allows for around 30% more space than previous motherboards,and the XCGPU, an integrated CPU/GPU/eDRAM chip using a 45 nm fabrication process. Microsoft have said that they believe that the console is only mid-way through its life-cycle and will continue through 2015.

Xbox 360 system software (or Dashboard), is the updatable software and operating system for the Xbox 360. It resides on a 16 MB file system and has access to a maximum of 32 MB of the system's memory. Version 2.0 (11/11) supports:
- Stereoscopic 3D
- Dual play
- Updated Standard and Kinect Dashboard with Full Voice Dashboard Commandment Support

Wednesday, October 12, 2011

DirectX

Windows 98 and Windows NT 4.0 both shipped with DirectX. DirectX is a collection of APIs for handling video and gaming programming. Its functionality is provided in the form of COM-style objects and interfaces. The components of DirectX are:
- DirectDraw, Direct3D, Direct2D, DXGI, DirectWrite, DirectCompute,
- DirectInput, DirectPlay, DirectX Diagnostics (DxDiag), DirectSetup
- DirectSound, DirectSound3D, DirectMusic (replaced with XAudio2 and XACT3)
- Direct Media Objects, DirectMedia, DirectShow.

DirectX versions
5.2 (8/97) - Available as a beta for Windows 2000 that would install on NT 4.0
7.0 (2/00) - Windows 2000
8.1 (11/01) - Windows XP, Windows Server 2003 and Xbox
8.2 (02) - same as 8.1b (fix to DirectShow on Win2K) but includes DirectPlay 8.2
9.0 (12/02) - 9.0c Windows XP SP2 (8/04), SP3 (4/08)
10 (11/06) - Windows Vista exclusive
10.1 (4/09) - SP2 for Windows Vista, Windows Server 2008, includes Direct3D 10.1
11 (2/11) - SP1 for Windows 7, Windows Server 2008 R2
11.1 (9/11) - Windows 8 Developer Preview

DirectX 8 & 9
DirectX was also used as a basis for Microsoft's Xbox and Xbox 360 console API. The API was developed jointly between Microsoft and Nvidia. The Xbox API is similar to DirectX version 8.1. In 2002, Microsoft released DirectX 9 with support for the use of much longer shader programs than before with pixel and vertex shader version 2.0. In 2004, DirectX 9.0c was released with shader model 3.0.

DirectX 10
Windows Vista includes a new version of Direct3D, called Direct3D 10. It adds scheduling and memory virtualization capabilities to the graphics subsystem. The Direct3D 10 incorporates Microsoft's High Level Shader Language 4.0. The API introduces unified vertex and pixel shaders. In addition, it also supports Geometry Shaders, which operate on entire geometric primitives (points, lines, and triangles), and can allow calculations based on adjacent primitives as well. The output of the geometry shader can be passed directly onwards to the rasterizer for interpolation and pixel shading, or written to a vertex buffer (known as 'stream out') to be fed back into the beginning of the pipeline.

Direct3D 10 is not backward compatible like prior versions of DirectX. Its functionality requires WDDM (Windows Display Driver Model) and new graphics hardware. The graphics hardware will be pre-emptively multithreaded, to allow multiple threads to use the GPU in turns. It will also provide paging of the graphics memory.

Many former parts of DirectX API were deprecated in the latest DirectX SDK and will be preserved for compatibility only:
- DirectInput was deprecated in favor of XInput,
- DirectSound was deprecated in favor of the Cross-platform Audio Creation Tool system (XACT) and lost support for hardware accelerated audio, since Vista audio stack renders sound in software on the CPU.
- DirectPlay DPLAY.DLL was also removed and was replaced with dplayx.dll; games that rely on this DLL must duplicate it and rename it to dplay.dll.

Direct3D 10.1 is an incremental update of Direct3D 10.0, requires video card supports Shader Model 4.1 or higher and 32-bit floating-point operations - adds support for cube map arrays, separate blend modes per-MRT, coverage mask export from a pixel shader, ability to run pixel shader per sample, access to multi-sampled depth buffers.

DirectX 11
Direct3D 11 is a strict superset of Direct3D 10.1 — all hardware and API features of version 10.1 are retained, and new features are added only when necessary for exposing new functionality. New features: GPGPU support (DirectCompute), and Direct3D11 with tessellation support and improved multi-threading support to assist video game developers in developing games that better utilize multi-core processors. Hardware tessellation and Shader Model 5.0 require Direct3D 11 supporting hardware.

Direct3D 11 runtime introduces Direct3D 9, 10, and 10.1 "feature levels", compatibility modes which allow use of only the hardware features defined in the specified version of Direct3D. For Direct3D 9 hardware, there are three different feature levels, grouped by common capabilities of "low", "med" and "high-end" video cards; the runtime directly uses Direct3D 9 DDI provided in all WDDM drivers.

DirectX 11.1 is included in Windows 8.
It supports WDDM 1.2 for increased performance, features:
- tighter integration of Direct2D, Direct3D, and DirectCompute
- DirectXMath, XAudio2, and XInput libraries from the XNA framework
- features stereoscopic 3D support for gaming and video

Thursday, October 6, 2011

Steve Jobs 1955-2011

Steve Jobs' 2005 Stanford Commencement Speech

"No one wants to die. Even people who want to go to heaven don’t want to die to get there. And yet death is the destination we all share. No one has ever escaped it. And that is as it should be, because Death is very likely the single best invention of Life. It is Life’s change agent. It clears out the old to make way for the new. Right now the new is you, but someday not too long from now, you will gradually become the old and be cleared away. Sorry to be so dramatic, but it is quite true.

Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma — which is living with the results of other people’s thinking. Don’t let the noise of others’ opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary."