Friday, July 23, 2010

HowTo: overclocking your Graphic Card

Liquid Fuel Cell Candle Lamp
1. What is Overclocking?
Overclocking a processor or a graphics card is done to run component at a speed exceeding the speed of normal operation. It is therefore an interest of a person to overclock its processor or graphics card fast enough especially when you know that the gain can reach up to 20% for certain processors (usually it's more around 5-10% without spending a ventilation fortune in liquid nitrogen or thermal paste).

This article deals only with the overclocking of the graphics card, those who wish to overclock their processor may consult the following page, specially Intel Core i7 Overclocking. Please note that overclocking the graphics card allows in general to gain more performance than overclocking the processor. Of course it is not forbidden, and even recommended to overclock the CPU and graphics card, provided to the tests separately and to cool its housing. Overclocking a graphics card is possible in the first place because the manufacturer usually leaves a safety margin to ensure reliability and avoid too expensive back VAS. Manufacturers dimensionnent cards so they can operate under the worst conditions, ie in a poorly ventilated casing, in full heat.

In contrast to processors, there are many resellers of graphics cards. They must of course follow the specifications imposed by the 2 major current: ATi and NVidia. For this reason graphics cards of the same variety can have a totally different measures depending on the brand because manufacturers may use the quality of ram and a different cooling system for their model. This means that before purchasing your card, if you want to overclock, it should look different in comparisons of different brands found on sites specializing in hardware.

2. What is the point?
The main interest of overclocking is to increase slightly the power of its computer for no cost or very low cost. In practice the gain will not be extraordinary, but overclocking is a sport that hackers enjoy. Those who take pleasure in making a few fps in a game or win a few points in 3DMark included..

3. The risks?
The overclocking is of course under the responsibility of those who practice and the author of this article can not be questioned for any damages you would suffer for your hardware.

To answer the question, yes, overclocking your graphics card is risky. But like all extreme sports overclocking by following the advice can limit the risks. The author of this article practiced this "sport" for many years, no death component to report till yet.

First overclocking of the graphics card obviously makes obsolete the guarantee vis-a-vis the manufacturer, even if it is true that it is difficult for the manufacturer to know how it was used by the user ...

The main risk of overclocking is burning by the graphics card overheating. In practice, graphics cards are quite resistant and the risk of endanger is low, provided of course always ensure the cooling of the RAM and GPU of the card.

4. How to overclock?
You can play with 2 main settings to improve the performance of your graphics card: the frequency of the graphics processor (GPU) and the frequency of the card. To overclock the graphics card, you can act on one or the other or of course the two parameters at once. In general we proceed by step in order to determine the maximum value that can support the GPU and RAM separately, then we can test the simultaneous activation of 2 parameters. It is sometimes necessary to compromise but we will talk later in this article.

5. The step-by-step overclocking

5.1. Install the latest Nvidia or Ati drivers
The first thing to do above all is to ensure that we have installed the latest drivers for your graphics card. Ati and Nvidia provides drivers for all their unique range of graphics cards. In general there are 2 versions of drivers: the drivers that are WHQL certified drivers certified by Microsoft and approved by the manufacturers and drivers version "beta" which may be more efficient but with the risk of bugs. The latest Ati drivers (catalyst) and Nvidia (Forceware) are available on the websites of manufacturers (Nvidia and Ati), or also on the site drivers.com. It is important to regularly update the drivers of its graphics card, because the latest versions correct as bugs found.

5.2. Overclock graphics card
First back up your data, you can never be too careful when doing this type of manipulation.

Today it has become very easy to overclock the graphics card because there are many utilities that allow you to increase the frequency of your card with a single click. For a list of utilities you can view this page called Detail list of Overclocking / Benchmarking software. The software that I recommend and I will use for the rest of this article is Powerstrip you can download it from here.

5.2.1. Using a program to change the frequency (eg software Powerstrip)
Installing this software is very simple, just follow the signs, an icon should appear in the shortcuts on the taskbar at the bottom right. This comprehensive software has many features and it is possible to create "profiles" with different settings (colors, frequencies, etc). Some features like making a shortcut on the "brightness" can be very useful for certain games like counter strike ... but it is not the purpose of this article.

To change the frequency of the graphics card, click the right mouse button on the icon and choose powerstrip performance profiles / configure ... You get a window similar to the screen below.

HowTo: overclocking your Graphic Card

It is very simple to modify the frequencies of the graphics card using the 2 green arrows, you can change the frequency of memory (memory clock) and the frequency of the GPU (Engine clock).

For Nvidia, it is possible to download a small "tweak" that can activate a function in the properties of the drivers of the graphics card. The screen below shows an example of the clock frequencies that appears after activation. In the same way as the powerstrip software, it is now possible to increase the frequency of memory and GPU of the card.
New features in the properties of the graphics card:

HowTo: overclocking your Graphic Card

5.2.2. What frequencies the GPU and memory?
Now that we know how to change the frequencies of your graphics card, a question arises: How often you get the best performance?

The first thing to do is not to increase sharply the frequency of memory and / or GPU: the risk of crash of the computer arises or even you can damage the graphics card which is not negligible. Fortunately the software in general reverts back to default if the frequency of the card is too increased.

To overclock the graphics card, you must separately test the memory and GPU increasing step frequency (in steps of approximately 10MHz). At almost any change in frequency, a test in a 3D game or even better by using a benchmark such as 3DMark. The screenshot below shows one of the most famous software benchmark: 3DMark2003.

Screenshot of 3DMark 2003


It may take 3 things during the test. Firstly, if the display is normal and that everything works and the card supports this frequency, you must start a new operation, ie increase the frequency and repeat the test. Second option display in the game or the bench is "bizarre", meaning that there are artifacts in the 3D scenes (additional or missing polygons). In this case we are on the edge of the graphics card. The overclocking is possible without hardware changes to the card in normal use, you must submit a slightly lower frequency (10MHz) to avoid problems of possible future changes in temperature. Last chance: the screen remains black, in this case the card does not support the frequency and must reboot the computer if the software does not return to the previous frequency (it is usually possible because the software test display before validating the frequency).

Once the maximum frequency has been determined, it is advisable to complete a benchmark to validate the overclocking and measure the gain in performance. To rise higher frequency it is possible to consider technical amendments in order to improve cooling. A box fan can bring some fresh air, but to significantly improve performance, there is no alternative to change radiator and / or fan on the graphics card (if it is equipped) .

6. Conclusion
The purpose of this article is intentionally an brief to give an idea of what is overclocking and how to proceed. Remember that there are rules to follow, but in this field it is a matter of experimentation and testing on a case by case basis. In order to limit the problem, always thinking before acting and making big changes in parameters. (eg skip the memory frequency from 500 to 800MHz is likely to see the machine to destroy components ...). No specific figure was given in this article because of the numerous number of graphics card manufacturer. But many tests of hardware and graphics cards in particular and are made regularly to see the performance and overclocking potential of new models. All remarks and comments on this article are also welcome.
Liquid Fuel Cell Candle Lamp

Thursday, July 22, 2010

New Download Manager for Linux

Liquid Fuel Cell Candle Lamp
RoxBird is a Advanced and Graphical download manager written in Python and C
based GTK+ GUI.. It can accelerate your download speed upto 40% then normal.
This is my first personal project for Linux and also in PC softwares.


Screen short: (view more screen shorts)

RoxBird in action

Please visit  ThisPage to view more.


Vigil Candles

Wednesday, April 28, 2010

Solution for multithreaded GTK+ GUI hang and Random Crash.


Here is a solution that i found for multi-threaded PyGTK+ GUI hang/Crash. After a long search i found this code in some where on the internet, but i can't remember where is it really placed.


For What:
GTK+ is not thread safe, So we have to use "gtk.gdk.threads_enter" and "gtk.gdk.threads_leave" for that. This will make threading safe on GTK+, Like this
#!/usr/bin/env python
# -*- coding: utf-8 -*-
gtk.gdk.threads_enter()
#Handling GTK+ GUI
gtk.gdk.threads_leave()

but some time GUI hangs when same thread acquire this lock  for more than one time like this.
gtk.gdk.threads_enter()
#Handling GTK+ GUI
gtk.gdk.threads_enter()  #************ 
#again Handling GTK+ GUI
gtk.gdk.threads_leave()
So we have to find is this thread has it's lock already or not and make lock.
here is the code that will track threads and find is that really has it lock or not and make correct Locks.

Code:Download
class Check_For_Lock:
        def __init__(self):
                self.lock = threading.Lock()
                self.thread = None
                self.locked = 0
        def __enter__(self):
                with self.lock: DoLock = (thread.get_ident()!=self.thread)
                if DoLock:
                        gtk.gdk.threads_enter()
                        with self.lock: self.thread = thread.get_ident()
                self.locked += 1
                return None

        def __exit__(self, exc_type, exc_value, traceback):
                with self.lock:
                        self.locked -= 1
                        if self.thread!=thread.get_ident():
                                print "!ERROR! Thread freenot locked lock!"
                                sys.exit(0)
                        else:
                                if self.locked == 0:
                                        self.thread = None
                                        #Added BY me  SEE WHY?:
                                        #http://library.gnome.org/devel/gtk-faq/stable/x491.html
                                        gtk.gdk.flush()
                                        gtk.gdk.threads_leave()
                return None
TLocker = Check_For_Lock()

def TLocked(f):
    def wraps(f):return f
    #@wraps(f)
    def wrapper(*args, **kwds):
        with TLocker.lock:
            if TLocker.thread == None or TLocker.thread==thread.get_ident():
                TLocker.thread = thread.get_ident()
                TLocker.locked += 1
                WeHold = True
            else:
                print "***ERROR: GtkLocked for non-owned thread!"
                WeHold = False
        ret = f(*args, **kwds)
        if WeHold:
            with TLocker.lock:
                TLocker.locked -= 1
                if TLocker.locked == 0: TLocker.thread = None
        return ret
    return wrappr
I used this code for my project RoxBird Download Manager.
I got so many crashes on RoxBird. after that i removed gdk.threads_enter()/leave() and used this, Now RoxBird have a stable GUI.

you can use it simply like this

with TLocker:
    #Make changes on GTK+ GUI.
    window.set_size_request(400, 300)
#Connecting Signal via threads
widget.connect('signal_name', TLocked(CallFunction), UsrArg1, UsrArg2, ...)


Notes: 
  • You should create "gtk.gdk.threads_init()" after importing "gtk" module.  
  • You should use only one Instance of TLocker for the all application. (you can use reference for TLocker)
  • In threads all GUI handling should be inside of the "with TLocker" block.
  • "widget.connect" should called with TLocked like above, and connect statement should not inside of the "with TLocker" 
if i miss something on code or notes, feel free to comment.

Sunday, April 18, 2010

Tutorial to Flash/Upgrade Nokia mobile (You can do it yourself)

If you don't know what is Flashing:

Flashing or Upgrading your mobile is just like installing OS in your PC. But
the only one difference is, in PC processor was designed to work with many OS'
software's, but mobiles are not like PC. That can only work with it's own
software.

Installing OS on PC can be done by connecting CD/DVD drive or Thumpdrive
with PC. Like that mobile Flashing can be done by connecting Mobile with PC via
Cable.

For PC you need Setup Package of OS, Like PC mobile need its setup files,
There is a software named Navifirm to obtain these files for
us. you can get it from here: Download Navifirm

PC os's have a small software that can copy all needed files to HardDrive
while installing. mobile OS does not have softwares like PC OS's, So we need
another software to do that thing. In this example we are using JAF . You can
get it from here: Download JAF


You need:

You can get flash files on the internet. just google for "FLASH FILE (NOKIA
BB-5)" you'll get what you want.

OR

Use Navifirm (see above for download).

How to use Navifirm:

First of all you need to know your mobile RM number and SW version. see
underneath the battery.

Navifirm Download


eg:

Type: RM-84
CODE: 0539276
Model: N70-1

after this open Navifirm then select like this: Your RM number > SW
version > any language/color you want

then download only *.mcusw, *.ppm and Image files.

after that rename *.mcusw file to *.c0r.

Now we have Flash files for selected mobile, and JAF installed on system.


ToDo:

Note: Don't miss any steps below. READ CAREFULLY****

◆ Disable and Uninstall PC suite if you have. and also Uninstall Nokia Software Updater (NSU).

◆ Open JAF (see above for download.)

◆ Clike on tab what mobile you have (like BB5 or WD2) see/know more:BB5

◆ Connect phone in "PC suite" mode.

◆ Tick manual flash, factory set and normal mode. Also CRT 308 but it's already ticked.

◆ If you're flashing a DEAD phone, tick the manual flash, Factory set, Normal mode and dead flash. And remove tick from CRT308

◆ select the
MCU (the renamed **.c0r file),
PPM,
CNT (the **.image file)

◆ Plug in the phone to charger.

In case of dead flashing, don't connect the charger yet.

◆ Check cable connection for stable and then HIT "FLASH" .

◆Hit "OK"

In case of dead flashing, When jaf says "PRESS POWER ON NOW" , connect the charger and turn on the phone.

◆ the screen should go white and stay that way.

◆ Don't touch phone or cable till JAF says "done".

You may need to WAIT upto 10min for JAF finish.


Disclaimer:You should know some basic ideas about what you doing. I am not responsible for any loses due to wrong process, incorrect hardware's,careless.