unit 78: Digital graphics for computer games.
Monday, 8 September 2014
Thursday, 4 September 2014
HA1 task 3
Pixel art is a form of digital art, created through the use of raster graphics software, where images are edited on the pixel level. Graphics in most old (or relatively limited) computer, console, graphing calculator and mobile phone video games are mostly pixel art.
http://en.wikipedia.org/wiki/Pixel_art
http://juli95.deviantart.com/art/Mario-Pixel-363155255
This game showcases how pixel art was a phenomenal thing in early gaming. Mario is a pixel and 3d icon in the world of gaming.
Concept art is a form of illustration used to convey an idea for use in (but not limited to) films, video games, animation, or comic books before it is put into the final product. Concept art is also referred to as visual development and/or concept design. This term can also be applied to retail, set, fashion, architectural and industrial design.
http://en.wikipedia.org/wiki/Concept_art
http://www.glitterberri.com/hyrule-historia/page-171/
This is the concept art of Link from the legend of Zelda.
Physical texture, also known as actual texture or tactile texture, are the actual variations upon a surface. This can include, but is not limited to, fur, wood grain, sand, smooth surface of canvas or metal, glass, and leather. It differentiates itself from visual texture by having a physical quality that can be felt by touch. Specific use of a texture can affect the smoothness that an artwork conveys. For instance, use of rough surfaces can be visually active, whilst smooth surfaces can be visually restful. The use of both can give a sense of personality to a design, or utilized to create emphasis, rhythm, contrast, etc.
Light is an important factor for physical artwork, because it can affect how a surface is viewed. Strong lights on a smooth surface can obscure the readability of a drawing or photograph, whilst they can create strong contrasts in a highly textural surface such as river rocks and sand.
http://en.wikipedia.org/wiki/Texture_(visual_arts)
http://www.dsogaming.com/screenshot-news/gta-iv-modded-at-4k-rivals-next-gen-open-world-titles-gives-gta-v-a-run-for-its-money/
Gta is a perfect example of how texture art is viewed highly amongst the viewers.
Parallel projection
Main article: Parallel projection
Games utilizing parallel projection typically make use of two-dimensional bitmap graphics as opposed to 3D-rendered triangle-based geometry, allowing developers to create large, complex gameworlds efficiently and with relatively few art assets by dividing the art into sprites or tiles and reusing them repeatedly (though some games use a mix of different techniques).
Top-down perspective, also sometimes referred to as bird's-eye view, Overworld, overhead view or helicopter view, when used in video games refers to a camera angle that shows the player and the area around them from above. While not exclusive to video games that utilise parallel projection, it was at one time common in 2D role playing video games, wargames and construction and management simulation games such as SimCity, Pokémon, and Railroad Tycoon, as well as in action and action-adventure games such as the early The Legend of Zelda and Grand Theft Auto games.
http://en.wikipedia.org/wiki/Video_game_graphics
http://www.giantbomb.com/ansatsuken/3015-8490/
As you can see from the background. You'll find that the background is in quite a lot of detail. This is to help the player gather more enthusiasm towards games like this in general.
In painting, "media" refers to both the type of paint used and the base (or ground) to which it is applied. A paint's medium refers to what carries a paint's pigments (colors), and is also called a "vehicle", "base" or binder. A painter can mix a medium with solvents, pigments, and other substances in order to make paint, and control consistency.
http://en.wikipedia.org/wiki/List_of_artistic_media
http://unit78tb.blogspot.co.uk/
Skyrim is a good example of how print media can be used in games of all sorts.
http://en.wikipedia.org/wiki/Pixel_art
http://juli95.deviantart.com/art/Mario-Pixel-363155255
This game showcases how pixel art was a phenomenal thing in early gaming. Mario is a pixel and 3d icon in the world of gaming.
Concept art is a form of illustration used to convey an idea for use in (but not limited to) films, video games, animation, or comic books before it is put into the final product. Concept art is also referred to as visual development and/or concept design. This term can also be applied to retail, set, fashion, architectural and industrial design.
http://en.wikipedia.org/wiki/Concept_art
http://www.glitterberri.com/hyrule-historia/page-171/
This is the concept art of Link from the legend of Zelda.
Physical texture, also known as actual texture or tactile texture, are the actual variations upon a surface. This can include, but is not limited to, fur, wood grain, sand, smooth surface of canvas or metal, glass, and leather. It differentiates itself from visual texture by having a physical quality that can be felt by touch. Specific use of a texture can affect the smoothness that an artwork conveys. For instance, use of rough surfaces can be visually active, whilst smooth surfaces can be visually restful. The use of both can give a sense of personality to a design, or utilized to create emphasis, rhythm, contrast, etc.
Light is an important factor for physical artwork, because it can affect how a surface is viewed. Strong lights on a smooth surface can obscure the readability of a drawing or photograph, whilst they can create strong contrasts in a highly textural surface such as river rocks and sand.
http://en.wikipedia.org/wiki/Texture_(visual_arts)
http://www.dsogaming.com/screenshot-news/gta-iv-modded-at-4k-rivals-next-gen-open-world-titles-gives-gta-v-a-run-for-its-money/
Gta is a perfect example of how texture art is viewed highly amongst the viewers.
Parallel projection
Main article: Parallel projection
Games utilizing parallel projection typically make use of two-dimensional bitmap graphics as opposed to 3D-rendered triangle-based geometry, allowing developers to create large, complex gameworlds efficiently and with relatively few art assets by dividing the art into sprites or tiles and reusing them repeatedly (though some games use a mix of different techniques).
Top-down perspective, also sometimes referred to as bird's-eye view, Overworld, overhead view or helicopter view, when used in video games refers to a camera angle that shows the player and the area around them from above. While not exclusive to video games that utilise parallel projection, it was at one time common in 2D role playing video games, wargames and construction and management simulation games such as SimCity, Pokémon, and Railroad Tycoon, as well as in action and action-adventure games such as the early The Legend of Zelda and Grand Theft Auto games.
http://en.wikipedia.org/wiki/Video_game_graphics
http://www.giantbomb.com/ansatsuken/3015-8490/
As you can see from the background. You'll find that the background is in quite a lot of detail. This is to help the player gather more enthusiasm towards games like this in general.
In painting, "media" refers to both the type of paint used and the base (or ground) to which it is applied. A paint's medium refers to what carries a paint's pigments (colors), and is also called a "vehicle", "base" or binder. A painter can mix a medium with solvents, pigments, and other substances in order to make paint, and control consistency.
http://en.wikipedia.org/wiki/List_of_artistic_media
http://unit78tb.blogspot.co.uk/
Skyrim is a good example of how print media can be used in games of all sorts.
HA1 task 2
Photo realism is a genre of art that encompasses painting, drawing and other graphic mediums, in which an artist studies a photograph and then attempts to reproduce the image as realistically as possible in another medium. Although the term can be used to broadly describe artworks in many different mediums, it is also used to refer specifically to a group of paintings and painters of the United States art movement that began in the late 1960s and early 1970s.
http://en.wikipedia.org/wiki/Photorealism
http://prince911.deviantart.com/art/Nihang-Photorealism-177706830
http://slhwork.blogspot.co.uk/
This is a perfect example of what photo-realism in games look like. This is a good representation of what a photo-realistic picture is.
Cel shading (often misspelled as 'cell shading') or toon shading is a type of non-photorealistic rendering designed to make 3-D computer graphics appear to be flat by using less shading color instead of a shade gradient or tints and shades. Cel-shading is often used to mimic the style of a comic book or cartoon. It is somewhat recent, appearing from around the beginning of the twenty-first century. The name comes from cels (short for celluloid), the clear sheets of acetate which are painted on for use in traditional 2D animation.
http://en.wikipedia.org/wiki/Cel_shading
Legend of zelda: Wind waker http://www.neogaf.com/forum/showthread.php?t=76181
This is my favourite type of art. It look colourful and breath-taking.
Abstraction is a conceptual process by which general rules and concepts are derived from the usage and classification of specific examples, literal ("real" or "concrete") signifiers, first principles, or other methods. "An abstraction" is the product of this process—a concept that acts as a super-categorical noun for all subordinate concepts, and connects any related concepts as a group, field, or category. Conceptual abstractions may be formed by reducing the information content of a concept or an observable phenomenon, typically to retain only information which is relevant for a particular purpose. For example, abstracting a leather soccer ball to the more general idea of a ball retains only the information on general ball attributes and behavior, eliminating the other characteristics of that particular ball. In a type–token distinction, a type (e.g., a 'ball') is more abstract than its tokens (e.g., 'that leather soccer ball').
http://en.wikipedia.org/wiki/Abstraction
http://gde-fon.com/download/sword_video_game_scorpion_abstraction/536456/1920x1080
This is a good example of Abstraction.
Mortal kombat 9
Exaggeration is a representation of something in an excessive manner. The exaggerator has been a familiar figure in Western culture since at least Aristotle's discussion of the alazon: 'the boaster is regarded as one who pretends to have distinguished qualities which he possesses either not at all or to a lesser degree than he pretends...exaggerating'.
http://en.wikipedia.org/wiki/Exaggeration
http://www.gamingnexus.com/Article/WWE-All-Stars/Item3011.aspx
This is a good example of exaggeration. This game is known as WWE All-stars.
http://en.wikipedia.org/wiki/Photorealism
http://prince911.deviantart.com/art/Nihang-Photorealism-177706830
http://slhwork.blogspot.co.uk/
This is a perfect example of what photo-realism in games look like. This is a good representation of what a photo-realistic picture is.
Cel shading (often misspelled as 'cell shading') or toon shading is a type of non-photorealistic rendering designed to make 3-D computer graphics appear to be flat by using less shading color instead of a shade gradient or tints and shades. Cel-shading is often used to mimic the style of a comic book or cartoon. It is somewhat recent, appearing from around the beginning of the twenty-first century. The name comes from cels (short for celluloid), the clear sheets of acetate which are painted on for use in traditional 2D animation.
http://en.wikipedia.org/wiki/Cel_shading
Legend of zelda: Wind waker http://www.neogaf.com/forum/showthread.php?t=76181
This is my favourite type of art. It look colourful and breath-taking.
Abstraction is a conceptual process by which general rules and concepts are derived from the usage and classification of specific examples, literal ("real" or "concrete") signifiers, first principles, or other methods. "An abstraction" is the product of this process—a concept that acts as a super-categorical noun for all subordinate concepts, and connects any related concepts as a group, field, or category. Conceptual abstractions may be formed by reducing the information content of a concept or an observable phenomenon, typically to retain only information which is relevant for a particular purpose. For example, abstracting a leather soccer ball to the more general idea of a ball retains only the information on general ball attributes and behavior, eliminating the other characteristics of that particular ball. In a type–token distinction, a type (e.g., a 'ball') is more abstract than its tokens (e.g., 'that leather soccer ball').
http://en.wikipedia.org/wiki/Abstraction
http://gde-fon.com/download/sword_video_game_scorpion_abstraction/536456/1920x1080
This is a good example of Abstraction.
Mortal kombat 9
Exaggeration is a representation of something in an excessive manner. The exaggerator has been a familiar figure in Western culture since at least Aristotle's discussion of the alazon: 'the boaster is regarded as one who pretends to have distinguished qualities which he possesses either not at all or to a lesser degree than he pretends...exaggerating'.
http://en.wikipedia.org/wiki/Exaggeration
http://www.gamingnexus.com/Article/WWE-All-Stars/Item3011.aspx
This is a good example of exaggeration. This game is known as WWE All-stars.
HA1 task 1 - Technical Glossary
PIXEL
In digital imaging, a pixel, pel, or picture element is a physical point in a raster image, or the smallest addressable element in an all points addressable display device; so it is the smallest controllable element of a picture represented on the screen. The address of a pixel corresponds to its physical coordinates. LCD pixels are manufactured in a two-dimensional grid, and are often represented using dots or squares, but CRT pixels correspond to their timing mechanisms and sweep rates.
http://en.wikipedia.org/wiki/Pixel
The term "pixel" is actually short for "Picture Element." These small little dots are what make up the images on computer displays, whether they are flat-screen (LCD) or tube (CRT) monitors. The screen is divided up into a matrix of thousands or even millions of pixels. Typically, you cannot see the individual pixels, because they are so small. This is a good thing, because most people prefer to look at smooth, clear images rather than blocky, "pixelated" ones. However, if you set your monitor to a low resolution, such as 640x480 and look closely at your screen, you will may be able to see the individual pixels. As you may have guessed, a resolution of 640x480 is comprised of a matrix of 640 by 480 pixels, or 307,200 in all. That's a lot of little dots.
http://www.techterms.com/definition/pixel
RGB
This is used primarily for the use of computers, T.V. This is because the three colours Red, Blue, Green are all primary colours.
The main purpose of the RGB color model is for the sensing, representation, and display of images in electronic systems, such as televisions and computers, though it has also been used in conventional photography. Before the electronic age, the RGB color model already had a solid theory behind it, based in human perception of colors
http://en.wikipedia.org/wiki/RGB_color_model
RGB is an essential concept that utilises all primary colours to as red, blue and green are all used to make white.
This picture below is an example of the three colours interlinking to make white.
http://www.discountprinting.com.au/news/ideas-tips/cmyk-or-rgb-the-facts-you-need-to-know/
.
CYMK
CYMK uses four colours Cyan, Magenta, Yellow and Black. CYMK is used in things like colour painting. For example.
Notice how The interlinking colours make red, green and blue.
The "K" in CMYK stands for key because in four-color printing, cyan, magenta, and yellow printing plates are carefully keyed, or aligned, with the key of the black key plate. Some sources suggest that the "K" in CMYK comes from the last letter in "black" and was chosen because B already means blue. However, this explanation, although useful as a mnemonic, is incorrect.
In digital imaging, a pixel, pel, or picture element is a physical point in a raster image, or the smallest addressable element in an all points addressable display device; so it is the smallest controllable element of a picture represented on the screen. The address of a pixel corresponds to its physical coordinates. LCD pixels are manufactured in a two-dimensional grid, and are often represented using dots or squares, but CRT pixels correspond to their timing mechanisms and sweep rates.
http://en.wikipedia.org/wiki/Pixel
The term "pixel" is actually short for "Picture Element." These small little dots are what make up the images on computer displays, whether they are flat-screen (LCD) or tube (CRT) monitors. The screen is divided up into a matrix of thousands or even millions of pixels. Typically, you cannot see the individual pixels, because they are so small. This is a good thing, because most people prefer to look at smooth, clear images rather than blocky, "pixelated" ones. However, if you set your monitor to a low resolution, such as 640x480 and look closely at your screen, you will may be able to see the individual pixels. As you may have guessed, a resolution of 640x480 is comprised of a matrix of 640 by 480 pixels, or 307,200 in all. That's a lot of little dots.
http://www.techterms.com/definition/pixel
RGB
This is used primarily for the use of computers, T.V. This is because the three colours Red, Blue, Green are all primary colours.
The main purpose of the RGB color model is for the sensing, representation, and display of images in electronic systems, such as televisions and computers, though it has also been used in conventional photography. Before the electronic age, the RGB color model already had a solid theory behind it, based in human perception of colors
http://en.wikipedia.org/wiki/RGB_color_model
RGB is an essential concept that utilises all primary colours to as red, blue and green are all used to make white.
This picture below is an example of the three colours interlinking to make white.
http://www.discountprinting.com.au/news/ideas-tips/cmyk-or-rgb-the-facts-you-need-to-know/
.
CYMK
CYMK uses four colours Cyan, Magenta, Yellow and Black. CYMK is used in things like colour painting. For example.
Notice how The interlinking colours make red, green and blue.
The "K" in CMYK stands for key because in four-color printing, cyan, magenta, and yellow printing plates are carefully keyed, or aligned, with the key of the black key plate. Some sources suggest that the "K" in CMYK comes from the last letter in "black" and was chosen because B already means blue. However, this explanation, although useful as a mnemonic, is incorrect.
The CMYK model works by partially or entirely masking colors on a lighter, usually white, background. The ink reduces the light that would otherwise be reflected. Such a model is called subtractive because inks "subtract"brightness from white.
http://en.wikipedia.org/wiki/CMYK_color_model
RESOLUTION
The display resolution of a digital television, computer monitor or display device is the number of distinct pixels in each dimension that can be displayed. It can be an ambiguous term especially as the displayed resolution is controlled by different factors incathode ray tube (CRT), flat-panel display which includes liquid-crystal displays, or projection displays using fixed picture-element (pixel) arrays.
It is usually quoted as width × height, with the units in pixels: for example, "1024 × 768" means the width is 1024 pixels and the height is 768 pixels. This example would normally be spoken as "ten twenty-four by seven sixty-eight" or "ten twenty-four by seven six eight".
http://en.wikipedia.org/wiki/Display_resolution
Raster
A .PSD file is a layered image file used in Adobe PhotoShop. PSD, which stands for Photoshop Document, is the default format that Photoshop uses for saving data. PSD is a proprietary file that allows the user to work with the images’ individual layers even after the file has been saved.
http://whatis.techtarget.com/fileformat/PSD-Adobe-Photoshop-default
The BMP file format, also known as bitmap image file or device independent bitmap (DIB) file format or simply abitmap,
http://en.wikipedia.org/wiki/BMP_file_format
Graphics Interchange Format. GIFs are image files that are compressed to reduce transfer time. The proper pronounciation of the acronym is a soft "g" sound: like JIF.
http://www.urbandictionary.com/define.php?term=GIF
TIFF is a computer file format for storing raster graphics images,
http://en.wikipedia.org/wiki/Tagged_Image_File_Format
JPG files, also known as JPEG files, are a common file format for digital photos and other digital graphics.
http://graphicdesign.about.com/od/Definitions/g/Jpg-Files.htm
Portable Network Graphics (PNG, pronounced "ping"), is a raster graphics file format that supports lossless data compression. PNG was created as an improved, non-patented replacement for Graphics Interchange Format (GIF), and is the most used lossless image compression format on the Internet.
http://en.wikipedia.org/wiki/Portable_Network_Graphics
Vector
vector graphics are comprised of paths, which are defined by a start and end point, along with other points, curves, and angles along the way.
http://www.techterms.com/definition/vectorgraphic
WMF is a file extension for a graphics file used with Microsoft Windows. WMF stands for Windows MetaFile. WMF files can contain both vector and bitmap image information.
http://whatis.techtarget.com/fileformat/WMF-Metafile-Microsoft-Windows
Authoring format for Macromedia application software. FLA files typically include vector image data for use in animations, timelines to control animation playback, and audio; they may also include "bitmapped" video content.
http://www.digitalpreservation.gov/formats/fdd/fdd000132.shtml
Short for Scalable Vector Graphics, a vector graphics file format that enables two-dimensional images to be displayed in XML pages on the Web.
http://www.webopedia.com/TERM/S/SVG.html
Adobe Illustrator is a program primarily used to create what is often called outline art.
http://uk.ask.com/question/what-is-adobe-illustrator-used-for
http://whatis.techtarget.com/definition/scanner
http://en.wikipedia.org/wiki/Portable_Network_Graphics
Vector
vector graphics are comprised of paths, which are defined by a start and end point, along with other points, curves, and angles along the way.
http://www.techterms.com/definition/vectorgraphic
WMF is a file extension for a graphics file used with Microsoft Windows. WMF stands for Windows MetaFile. WMF files can contain both vector and bitmap image information.
http://whatis.techtarget.com/fileformat/WMF-Metafile-Microsoft-Windows
Authoring format for Macromedia application software. FLA files typically include vector image data for use in animations, timelines to control animation playback, and audio; they may also include "bitmapped" video content.
http://www.digitalpreservation.gov/formats/fdd/fdd000132.shtml
Short for Scalable Vector Graphics, a vector graphics file format that enables two-dimensional images to be displayed in XML pages on the Web.
http://www.webopedia.com/TERM/S/SVG.html
Adobe Illustrator is a program primarily used to create what is often called outline art.
http://uk.ask.com/question/what-is-adobe-illustrator-used-for
Lossy and Lossless Compression
The type of compression we've been discussing here is called lossless compression, because it lets you recreate the original file exactly. All lossless compression is based on the idea of breaking a file into a "smaller" form for transmission or storage and then putting it back together on the other end so it can be used again.
Lossy compression works very differently. These programs simply eliminate "unnecessary" bits of information, tailoring the file so that it is smaller. This type of compression is used a lot for reducing the file size of bitmap pictures, which tend to be fairly bulky. To see how this works, let's consider how your computer might compress a scanned photograph.
A lossless compression program can't do much with this type of file. While large parts of the picture may look the same -- the whole sky is blue, for example -- most of the individual pixels are a little bit different. To make this picture smaller without compromising the resolution, you have to change the color value for certain pixels. If the picture had a lot of blue sky, the program would pick one color of blue that could be used for every pixel. Then, the program rewrites the file so that the value for every sky pixel refers back to this information. If the compression scheme works well, you won't notice the change, but the file size will be significantly reduced.
Of course, with lossy compression, you can't get the original file back after it has been compressed. You're stuck with the compression program's reinterpretation of the original. For this reason, you can't use this sort of compression for anything that needs to be reproduced exactly, including software applications, databases and presidential inauguration speeches.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3sbbh3FfEZIgvK6B2NKo3o8EKZSwm9JTlgmVyHXpfnBOJDXUhFDUqPhAJeQZvFhpM7kQ8wYaO433pwDlV3f42sCIFMJVdPVxY4tQe48qhh2VSRiT8XUp-ss8B6N-Uu68GtW5fJNCpa4k/s1600/LOSSY.GIF
Image capture devices
A scanner is a device that captures images from photographic prints, posters, magazine pages, and similar sources for computer editing and display. Scanners come in hand-held, feed-in, and flatbed types and for scanning black-and-white only, or color. Very high resolution scanners are used for scanning for high-resolution printing, but lower resolution scanners are adequate for capturing images for computer display. Scanners usually come with software, such as Adobe's Photoshop product, that lets you re-size and otherwise modify a captured image.
A digital camera (or digicam) is a camera that encodes digital images and videos digitally and stores them for later reproduction. Most cameras sold today are digital, and digital cameras are incorporated into many devices ranging from PDAs and mobile phones (called camera phones) to vehicles.
Digital and film cameras share an optical system, typically using a lens with a variable diaphragm to focus light onto an image pickup device. The diaphragm and shutter admit the correct amount of light to the imager, just as with film but the image pickup device is electronic rather than chemical. However, unlike film cameras, digital cameras can display images on a screen immediately after being recorded, and store and delete images from memory. Many digital cameras can also record moving videos with sound. Some digital cameras can crop and stitch pictures and perform other elementary image editing.
http://en.wikipedia.org/wiki/Digital_camera
Applications such as the smartphone and tablet etc, have digital capture devices:
A tablet computer, or simply tablet, is a mobile computer with display, circuitry and battery in a single unit. Tablets are equipped with sensors, including cameras, microphone, accelerometer and touchscreen, with finger or stylus gestures replacing computer mouse and keyboard. Tablets may include physical buttons, e.g., to control basic features such as speaker volume and power and ports for network communications and to charge the battery. An on-screen, pop-up virtual keyboard is usually used for typing. Tablets are typically larger than smart phones or personal digital assistants at 7 inches (18 cm) or larger, measured diagonally.
http://www.alexroddie.com/2013/01/a-tablet-computer-as-writers-companion.html
http://www.amazon.co.uk/Mobile-Phones/b?ie=UTF8&node=356496011
optimising
Rearrange or rewrite (data, software, etc.) to improve efficiency of retrieval or processing.
http://www.oxforddictionaries.com/definition/english/optimize
http://www.alexroddie.com/2013/01/a-tablet-computer-as-writers-companion.html
A smartphone (or smart phone) is a mobile phone with more advanced computing capability and connectivity than basic feature phones.
Early smartphones typically combined the features of a mobile phone with those of another popular consumer device, such as a personal digital assistant (PDA), a media player, a digital camera, and/or a GPS navigation unit. Later smartphones include all of those plus the features of a touchscreen computer, including web browsing, Wi-Fi, 3rd-party apps, motion sensor and mobile payment.
Currently, about 80% of handset sales worldwide are for devices driven by Google's Android and Apple's iOS mobile operating systems.
http://en.wikipedia.org/wiki/Smartphonehttp://www.amazon.co.uk/Mobile-Phones/b?ie=UTF8&node=356496011
optimising
Rearrange or rewrite (data, software, etc.) to improve efficiency of retrieval or processing.
http://www.oxforddictionaries.com/definition/english/optimize
Optimization can occur at a number of "levels":
- Design level
At the highest level, the design may be optimized to make best use of the available resources. The implementation of this design will benefit from a good choice of efficient algorithmsand the implementation of these algorithms will benefit from being written well. The architectural design of a system overwhelmingly affects its performance. The choice of algorithmaffects efficiency more than any other item of the design and, since the choice of algorithm usually is the first thing that must be decided, arguments against early or "premature optimization" may be hard to justify.
In some cases, however, optimization relies on using more elaborate algorithms, making use of "special cases" and special "tricks" and performing complex trade-offs. A "fully optimized" program might be more difficult to comprehend and hence may contain more faults than unoptimized versions.
- Source code level
Avoiding poor quality coding can also improve performance, by avoiding obvious "slowdowns". After that, however, some optimizations are possible that actually decrease maintainability. Some, but not all, optimizations can nowadays be performed by optimizing compilers.
- Build level
Between the source and compile level, directives and build flags can be used to tune performance options in the source code and compiler respectively, such as using pre-processor defines to disable unneeded software features, or optimizing for specific processor models or hardware capabilities. Source-based software distribution systems such as BSD's Portsand Gentoo's Portage can take advantage of this form of optimization.
- Compile level
Use of an optimizing compiler tends to ensure that the executable program is optimized at least as much as the compiler can predict.
- Assembly level
At the lowest level, writing code using an assembly language, designed for a particular hardware platform can produce the most efficient and compact code if the programmer takes advantage of the full repertoire of machine instructions. Many operating systems used on embedded systems have been traditionally written in assembler code for this reason. Programs (other than very small programs) are seldom written from start to finish in assembly due to the time and cost involved. Most are compiled down from a high level language to assembly and hand optimized from there. When efficiency and size are less important large parts may be written in a high-level language.
With more modern optimizing compilers and the greater complexity of recent CPUs, it is harder to write more efficient code than what the compiler generates, and few projects need this "ultimate" optimization step.
Much code written today is intended to run on as many machines as possible. As a consequence, programmers and compilers don't always take advantage of the more efficient instructions provided by newer CPUs or quirks of older models. Additionally, assembly code tuned for a particular processor without using such instructions might still be suboptimal on a different processor, expecting a different tuning of the code.
- Run time
Just-in-time compilers and assembler programmers may be able to perform run time optimization exceeding the capability of static compilers by dynamically adjusting parameters according to the actual input or other factors.
Self-modifying code can alter itself in response to run time conditions in order to optimize code.
Some CPU designs can perform some optimizations at runtime. Some examples include Out-of-order execution, Instruction pipelines, and Branch predictors. Compilers can help the program take advantage of these CPU features, for example through instruction scheduling.
Platform dependent and independent optimizations
Code optimization can be also broadly categorized as platform-dependent and platform-independent techniques. While the latter ones are effective on most or all platforms, platform-dependent techniques use specific properties of one platform, or rely on parameters depending on the single platform or even on the single processor. Writing or producing different versions of the same code for different processors might therefore be needed. For instance, in the case of compile-level optimization, platform-independent techniques are generic techniques (such as loop unrolling, reduction in function calls, memory efficient routines, reduction in conditions, etc.), that impact most CPU architectures in a similar way. Generally, these serve to reduce the total instruction path length required to complete the program and/or reduce total memory usage during the process. On the other hand, platform-dependent techniques involve instruction scheduling, instruction-level parallelism, data-level parallelism, cache optimization techniques (i.e., parameters that differ among various platforms) and the optimal instruction scheduling might be different even on different processors of the same architecture.
Strength reduction
Computational tasks can be performed in several different ways with varying efficiency. A more efficient version with equivalent functionality is known as a strength reduction. For example, consider the following C code snippet whose intention is to obtain the sum of all integers from 1 to N:
http://en.wikipedia.org/wiki/Program_optimization
The term storage management encompasses the technologies and processes organizations use to maximize or improve the performance of their data storage resources. It's a broad category that includes virtualization, replication, mirroring, security, compression, traffic analysis, process automation, storage provisioning and related techniques.
By some estimates, the amount of digital information stored in the world's computer systems is doubling every year. As a result, organizations feel constant pressure to expand their storage capacity. However, doubling a company's storage capacity every year is an expensive proposition. In order to reduce some of those costs and improve the capabilities. and security of their storage solutions, organizations turn to a variety of storage management solutions.
http://www.webopedia.com/TERM/S/storage_management.html
Asset management, broadly defined, refers to any system that monitors and maintains things of value to an entity or group. It may apply to both tangible assets such as buildings and to intangible concepts such as intellectual property and goodwill. Asset management is a systematic process of deploying, operating, maintaining, upgrading, and disposing of assets cost-effectively.
The term is most commonly used in the financial world to describe people and companies that manage investments on behalf of others. These include, for example, investment managers that manage the assets of a pension fund.
Alternative views of asset management in the engineering environment are: the practice of managing assets to achieve the greatest return (particularly useful for productive assets such as plant and equipment), and the process of monitoring and maintaining facilities systems, with the objective of providing the best possible service to users (appropriate for public infrastructure assets).
Subscribe to:
Posts (Atom)