1. Untar the xerces-c-3.1.1.tar.gz.
Install the xerces parser in the /opt directory. 
To do this go to unpacked directory: cd xerces-c-3.1.1
Run:
./configure --prefix=/usr
Now Run:
make
Finally Run:
make install
This will install xerces parser in your machine.


2. cd ~/GPUTejasPowerPack/UpdateConfig
It contains a script file (makeconfig.sh) that runs MAKE on cacti and mcpat. Then it takes configuration parameters from 
GPUTejas config file and configures the mcpat config file. This is followed by running the mcpat executable.
The power values generated from this step are then combined with the initial GPUTejas config file to generate new config(config_Gtpp.xml)
file. This file is then ready to be used by GPUTejas simulator.

All the parameters of GPUTeajs config file are configurable. You can set your parameters in expectedconfig.cfg. The config.xml will automatically be set
according to your expected parameters when you run makeconfig.sh. This newly configured config.xml will act as input to the power pack and will mcpat will 
generate energy numbers for these parameters. This will form new config file called config_Gtpp.xml that can be used in GPUTejas simulator.

Change the permissions of the script file: chmod +x makeconfig.sh
Run the script file: ./makeconfig.sh in the same folder /GPUTejasPowerPack/UpdateConfig.
This will first change mcpat input xml file according to the GPUTejas config file. 
Then it will create new xml file: config_Gtpp.xml (Gtpp=GPUtejaspowerpack)updated with power numbers generated by mcpat.	

   
3. GPUTejas Simulator needs <DynamicEnergy> and <LeakageEnergy> in nJ (10^(-9))for each of the components present in a Streaming Multiprocessor (SM).
<DynamicEnergy> = dynamic energy per access.
<LeakageEnergy> = leakage energy per cycle.
These energy values are provided by mcpat.

4. For direct usage, the default config_Gtpp.xml is provided. All the power values in this config are generated at 22nm. 

5. The 22nm technology at which the power values are generated is referred to as <baseline_technology> in the GPUTejas config file.
There is a tag <technology> just before <baseline_technology>. This <technology> tag tells us the technology at which you want GPUTejas to work. 
		If (<baseline_technology> = <technology>)
			use the same power values present in the config_Gtpp.xml
		else
			use the conversion Table.

Conversion Table:
***************************************************************************************************
Technology Nodes			Power
65->45nm				0.626x
45->32nm				0.626x
32->22nm 				0.648x
22->14nm				0.664x
14->10nm				0.671x
***************************************************************************************************
6. In case, you don't want to use the conversion table and generate your own power values, you need to specify the technology
at the <baseline_technology> tag in the initial GPUTejas config file. (This is the tag that is being read by the GPUTejas Power Pack wrapper).

