___________.__ .__
\_ _____/| | ____ _________________ | | _____ ____ ____ ___________
| __) | | / _ \ / _ \_ __ \____ \| | \__ \ / \ / \_/ __ \_ __ \
| \ | |_( <_> | <_> ) | \/ |_> > |__/ __ \| | \ | \ ___/| | \/
\___ / |____/\____/ \____/|__| | __/|____(____ /___| /___| /\___ >__|
\/ |__| \/ \/ \/ \/
Root:
Code:
Makefile
constants.cfg
main.cpp
Floorplanner.cpp
Node.cpp
Size.cpp
FloorplannerConstants.cpp
IOUtilites.cpp
PolishUtilities.cpp
RandomizeUtilites.cpp
IOUtilites_test.cpp
PolishUtilites_test.cpp
FloorplannerConstants_test.cpp
RandomizeUtilites_test.cpp
Node_test.cpp
Floorplanner_test.cpp
PolishUtilities.hpp
IOUtilites.hpp
FloorplannerConstants.hpp
PolishUtilities.hpp
RandomizeUtilites.hpp
Size.hpp
Node.hpp
Floorplanner.hpp
Documentation:
Analysis of Simulated Annealing.pdf
TestFolder:
n10hard:
n10hard.blocks
parser
n30hard
......
......
n300soft
- Generate executable for floorplanner a. Goto Code/ b. run 'make' command in terminal
- Using the executable a. Run the execuatble in folder containing the input file (say n100hard.blocks) b. Optional: Constants.cfg can also be kept in the same file to override constants. If file is not found in the same folder program uses default constants. c. On running the file the programs asks for the input file name, enter the fill name here including the extention. Eg: n100hard.blocks d. The entry is case sensitive.
- Wait until simulation is completed.
- Files generated: a. .out: This file contatins required output in the required foramt, ie. co-ordinates and area data. b. stats.txt: This file contains two values: Runtime, Percent of Black Area in the output. c. dump.csv: This is a csv file with all the data about Temperature, Cost, Moves and Delta Cost at each iteration. This file can be used for analysis of simulated annealing performed
File | Use |
---|---|
Makefile | This file is the main file being used for compiling and creating the executable of the program. |
constants.cfg | This is an optional input file to the program. It is used to override default constants. |
main.cpp | C++ 11 file with the main call. |
Floorplanner.cpp | Floorplanner class responsible for performing all floorplan related operations. |
Node.cpp | Base entity class for storing the Node(Block) related properties as well as methods. |
Size.cpp | Base entity class to store size information (length X width). |
FloorplannerConstants.cpp | Class providing all simulated annealing constants to the floorplanner. |
IOUtilities.cpp | Utility class for all IO operations. |
PolishUtilities.cpp | Utility class for all Polish Expression Related functions. |
RandomizeUtilities.cpp | Utility class for all random number generator and distributor related operations. |
_test.cpp | Various C++ files to test individual classes and their operations. |
.hpp | Header files for relavent classes. |
*Contains execuatble to and benchmark files to benchmark the program by running 100 times and giving average runtime and average % black area.
*All output data is stored in same folders as listed above.
##HOW TO USE: Simply call ./parser No requirement of giving indidual file name Working can be overriden by use of constraints.cfg file as listed above.