|
Zoltan2
|
00001 <!-- 00002 XML definition of Zoltan2 parameters and their validators. 00003 00004 This list is used to generate: 00005 1. {zoltan2_build_directory}/src/Zoltan2_XML_Parameters.hpp 00006 2. doc/parameters.dox 00007 00008 The first is a header file containing a string which is the 00009 XML definition of the parameters. 00010 00011 The second is a page of Doxygen documentation describing 00012 the parameters for users. 00013 00014 New parameters should be added to this file. 00015 00016 In the Parameter elements, the "value" must be a valid value 00017 for the parameter. It is not a default. We don't have 00018 default values for our parameters. If the user didn't 00019 define a value for a parameter, then that parameter doesn't 00020 appear in the parameter list and the library code at 00021 run-time can decide what to do about that. 00022 00023 NOTE: Do not use the string "P a r a m e t e r L i s t" in this file 00024 before the beginning of the XML parameter list. We search for that 00025 string to find the start of the XML definition. 00026 --> 00027 00028 <ParameterList name="zoltan2ValidatingParameters"> 00029 00030 <Parameter 00031 id="0" name="error_check_level" type="string" validatorId="0" value="basic_assertions" 00032 docString=' the amount of error checking performed 00033 (If the compile flag Z2_OMIT_ALL_ERROR_CHECKING was set, 00034 then error checking code is not executed at runtime.)' 00035 /> 00036 00037 <Parameter 00038 id="1" name="debug_level" type="string" validatorId="1" value="basic_status" 00039 docString=' the amount of status/debugging/warning information to print' 00040 /> 00041 00042 <Parameter 00043 id="2" name="timer_type" type="string" validatorId="2" value="no_timers" 00044 docString=' the type of timing information to collect 00045 (If the compile flag Z2_OMIT_ALL_PROFILING was set, 00046 then the timing code is not executed at runtime.)' 00047 /> 00048 00049 <Parameter 00050 id="3" name="debug_output_stream" type="string" validatorId="3" value="cout" 00051 docString=' output stream for debug/status/warning messages (default cout)' 00052 /> 00053 00054 <Parameter 00055 id="4" name="timer_output_stream" type="string" validatorId="4" value="cout" 00056 docString=' output stream for timing report (default cout)' 00057 /> 00058 00059 <Parameter 00060 id="5" name="memory_output_stream" type="string" validatorId="5" value="cout" 00061 docString=' output stream for memory usage messages (default cout)' 00062 /> 00063 00064 <Parameter 00065 id="6" name="debug_output_file" type="string" validatorId="6" value="/dev/null" 00066 docString=' name of file to which debug/status messages should be written 00067 (process rank will be included in file name)' 00068 /> 00069 00070 <Parameter 00071 id="7" name="timer_output_file" type="string" validatorId="6" value="/dev/null" 00072 docString=' name of file to which timing information should be written 00073 (process rank will be included in file name)' 00074 /> 00075 00076 <Parameter 00077 id="8" name="memory_output_file" type="string" validatorId="6" value="/dev/null" 00078 docString=' name of file to which memory profiling information should be written 00079 (process rank will be included in file name)' 00080 /> 00081 00082 <Parameter 00083 id="9" name="debug_procs" type="string" validatorId="7" value="0" 00084 docString=' list of ranks that output debugging/status messages (default "0")' 00085 /> 00086 00087 <Parameter 00088 id="10" name="pqParts" type="string" validatorId="8" value="0" 00089 docString=' list of parts for multijagged partitioning algorithm. As many as the dimension count.' 00090 /> 00091 00092 <Parameter 00093 id="11" name="memory_procs" type="string" validatorId="9" value="0" 00094 docString=' list of ranks that do memory profiling information (default "0")' 00095 /> 00096 00097 <Parameter 00098 id="12" name="speed_versus_quality" type="string" validatorId="10" value="balance" 00099 docString=' When algorithm choices exist, opt for speed or solution quality? 00100 (Default is a balance of speed and quality)' 00101 /> 00102 00103 <Parameter 00104 id="13" name="memory_versus_speed" type="string" validatorId="11" value="balance" 00105 docString=' When algorithm choices exist, opt for the use of less memory 00106 at the expense of runtime 00107 (Default is a balance of memory conservation and speed)' 00108 /> 00109 00110 <Parameter 00111 id="14" name="random_seed" type="string" validatorId="12" value="0.5" 00112 docString=' random seed' 00113 /> 00114 00115 <Parameter 00116 id="15" name="order_method" type="string" validatorId="13" value="rcm" 00117 docString=' order algorithm' 00118 /> 00119 00120 <Parameter 00121 id="16" name="order_package" type="string" validatorId="14" value="amd" 00122 docString=' package to use in ordering' 00123 /> 00124 00125 <Parameter 00126 id="17" name="compute_metrics" type="string" validatorId="15" value="no" 00127 docString=' Compute metrics after computing solution' 00128 /> 00129 00130 <Parameter 00131 id="18" name="topology" type="string" validatorId="16" value="" 00132 docString='Topology of node to be used in hierarchical partitioning 00133 "2,4" for dual-socket quad-core 00134 "2,2,6" for dual-socket, dual-die, six-core 00135 "2,2,3" for dual-socket, dual-die, six-core but 00136 with only three partitions per die' 00137 /> 00138 00139 <Parameter 00140 id="19" name="randomize_input" type="string" validatorId="17" value="no" 00141 docString=' randomize input prior to partitioning' 00142 /> 00143 00144 <Parameter 00145 id="20" name="partitioning_objective" type="string" validatorId="18" value="balance_object_weight" 00146 docString=' objective of partitioning (default depends on algorithm)' 00147 /> 00148 00149 <Parameter 00150 id="21" name="imbalance_tolerance" type="string" validatorId="19" value="1.1" 00151 docString=' imbalance tolerance, ratio of maximum load over average load (default 1.1)' 00152 /> 00153 00154 <Parameter 00155 id="22" name="num_global_parts" type="string" validatorId="20" value="0" 00156 docString=' global number of parts to compute (default is number of processes)' 00157 /> 00158 00159 <Parameter 00160 id="23" name="num_local_parts" type="string" validatorId="21" value="0" 00161 docString=' number of parts to compute for this process(default is one)' 00162 /> 00163 00164 <Parameter 00165 id="24" name="partitioning_approach" type="string" validatorId="22" value="partition" 00166 docString=' Partition from scratch, partition incrementally from current 00167 partition, of partition from scratch but maximize overlap 00168 with the current partition (default is "partition" from scratch)' 00169 /> 00170 00171 <Parameter 00172 id="25" name="objects_to_partition" type="string" validatorId="23" value="graph_vertices" 00173 docString=' Objects to be partitioned (defaults are "matrix_rows" for 00174 matrix input, "mesh_nodes" for mesh input, and "graph_vertices" 00175 for graph input)' 00176 /> 00177 00178 <Parameter 00179 id="26" name="model" type="string" validatorId="24" value="graph" 00180 docString=' This is a low level parameter. Normally the library will choose 00181 a computational model based on the algorithm or objective specified 00182 by the user.' 00183 /> 00184 00185 <Parameter 00186 id="27" name="algorithm" type="string" validatorId="25" value="random" 00187 docString=' partitioning algorithm' 00188 /> 00189 00190 <Parameter 00191 id="28" name="rectilinear_blocks" type="string" validatorId="26" value="no" 00192 docString=' If true, then when a cut is made, all of the dots located on the cut 00193 are moved to the same side of the cut. The resulting regions are then 00194 rectilinear. The resulting load balance may not be as good as when 00195 the group of dots is split by the cut. Default is false.' 00196 /> 00197 00198 <Parameter 00199 id="29" name="average_cuts" type="string" validatorId="27" value="no" 00200 docString=' When true, coordinates of RCB cutting planes are computed to be 00201 the average of the coordinates of the closest object on each side 00202 of the cut. Otherwise, coordinates of cutting planes may equal 00203 those of one of the closest objects. Default is false.' 00204 /> 00205 00206 <Parameter 00207 id="30" name="bisection_num_test_cuts" type="int" validatorId="28" value="1" 00208 docString=' Experimental: number of test cuts to do simultaneously (default is 1)' 00209 /> 00210 00211 <Parameter 00212 id="31" name="symmetrize_input" type="string" validatorId="29" value="no" 00213 docString=' Symmetrize input prior to pList. If "transpose", 00214 symmetrize A by computing A plus ATranspose. If "bipartite", 00215 A becomes [[0 A][ATranspose 0]]. ' 00216 /> 00217 00218 <Parameter 00219 id="32" name="subset_graph" type="string" validatorId="30" value="no" 00220 docString=' If "yes", the graph input is to be subsetted. If a vertex neighbor 00221 is not a valid vertex, it will be omitted from the pList. Otherwise, 00222 an invalid neighbor identifier is considered an error.' 00223 /> 00224 00225 <Parameter 00226 id="33" name="force_binary_search" type="string" validatorId="31" value="no" 00227 docString="If true, then regardless of the part number, cut line will be searched using binary search.\n" 00228 /> 00229 00230 <Parameter 00231 id="34" name="force_linear_search" type="string" validatorId="32" value="no" 00232 docString="If true, then regardless of the part number, cut line will be searched using linear search.\n" 00233 /> 00234 00235 <Parameter 00236 id="35" name="parallel_part_calculation_count" type="int" validatorId="33" value="1" 00237 docString="The number of parts whose cut coordinates will be calculated concurently." 00238 /> 00239 00240 <Validators> 00241 00242 <Validator defaultParameterName="error_check_level" integralValue="int" type="StringIntegralValidator(int)" validatorId="0"> 00243 <String integralValue="0" stringDoc="no assertions will be performed" stringValue="no_assertions"/> 00244 <String integralValue="1" stringDoc="typical checks of argument validity (fast, default)" stringValue="basic_assertions"/> 00245 <String integralValue="2" stringDoc="additional checks, i.e. is input graph a valid graph)" stringValue="complex_assertions"/> 00246 <String integralValue="3" stringDoc="check for everything including logic errors (slowest)" stringValue="debug_mode_assertions"/> 00247 </Validator> 00248 00249 <Validator defaultParameterName="debug_output_stream" integralValue="int" type="StringIntegralValidator(int)" validatorId="3"> 00250 <String integralValue="0" stringValue="std::cout"/> 00251 <String integralValue="0" stringValue="cout"/> 00252 <String integralValue="0" stringValue="stdout"/> 00253 <String integralValue="1" stringValue="std::cerr"/> 00254 <String integralValue="1" stringValue="cerr"/> 00255 <String integralValue="1" stringValue="stderr"/> 00256 <String integralValue="2" stringValue="/dev/null"/> 00257 <String integralValue="2" stringValue="null"/> 00258 </Validator> 00259 00260 <Validator defaultParameterName="debug_level" integralValue="int" type="StringIntegralValidator(int)" validatorId="1"> 00261 <String integralValue="0" stringDoc="library outputs no status information" stringValue="no_status"/> 00262 <String integralValue="1" stringDoc="library outputs basic status information (default)" stringValue="basic_status"/> 00263 <String integralValue="2" stringDoc="library outputs detailed information" stringValue="detailed_status"/> 00264 <String integralValue="3" stringDoc="library outputs very detailed information" stringValue="verbose_detailed_status"/> 00265 </Validator> 00266 00267 <Validator defaultParameterName="timer_type" integralValue="int" type="StringIntegralValidator(int)" validatorId="2"> 00268 <String integralValue="0" stringDoc="No timing data will be collected (the default)." stringValue="no_timers"/> 00269 <String integralValue="1" stringDoc="Time an algorithm (or other entity) as a whole." stringValue="macro_timers"/> 00270 <String integralValue="2" stringDoc="Time the substeps of an entity." stringValue="micro_timers"/> 00271 <String integralValue="3" stringDoc="Run both MACRO and MICRO timers." stringValue="both_timers"/> 00272 <String integralValue="4" stringDoc="Run timers added to code for testing, removed later" stringValue="test_timers"/> 00273 </Validator> 00274 00275 <Validator defaultParameterName="timer_output_stream" integralValue="int" type="StringIntegralValidator(int)" validatorId="4"> 00276 <String integralValue="0" stringValue="std::cout"/> 00277 <String integralValue="0" stringValue="cout"/> 00278 <String integralValue="0" stringValue="stdout"/> 00279 <String integralValue="1" stringValue="std::cerr"/> 00280 <String integralValue="1" stringValue="cerr"/> 00281 <String integralValue="1" stringValue="stderr"/> 00282 <String integralValue="2" stringValue="/dev/null"/> 00283 <String integralValue="2" stringValue="null"/> 00284 </Validator> 00285 00286 <Validator defaultParameterName="memory_output_stream" integralValue="int" type="StringIntegralValidator(int)" validatorId="5"> 00287 <String integralValue="0" stringValue="std::cout"/> 00288 <String integralValue="0" stringValue="cout"/> 00289 <String integralValue="0" stringValue="stdout"/> 00290 <String integralValue="1" stringValue="std::cerr"/> 00291 <String integralValue="1" stringValue="cerr"/> 00292 <String integralValue="1" stringValue="stderr"/> 00293 <String integralValue="2" stringValue="/dev/null"/> 00294 <String integralValue="2" stringValue="null"/> 00295 </Validator> 00296 00297 <Validator fileMustExist="false" type="FilenameValidator" validatorId="6"/> 00298 00299 <Validator type="IntegerRangeListValidator(int)" unsorted="false" validatorId="7"/> 00300 00301 <Validator type="IntegerRangeListValidator(int)" unsorted="false" validatorId="9"/> 00302 00303 <Validator type="IntegerRangeListValidator(int)" unsorted="true" validatorId="8"/> 00304 00305 <Validator type="StringValidator" validatorId="10"> 00306 <String value="speed"/> 00307 <String value="balance"/> 00308 <String value="quality"/> 00309 </Validator> 00310 00311 <Validator allowDouble="true" allowInt="true" allowString="true" prefferedType="double" type="anynumberValidator" validatorId="12"/> 00312 00313 <Validator type="StringValidator" validatorId="11"> 00314 <String value="memory"/> 00315 <String value="balance"/> 00316 <String value="speed"/> 00317 </Validator> 00318 00319 <Validator type="StringValidator" validatorId="13"> 00320 <String value="rcm"/> 00321 <String value="minimum_degree"/> 00322 <String value="natural"/> 00323 <String value="random"/> 00324 </Validator> 00325 00326 <Validator defaultParameterName="compute_metrics" integralValue="int" type="StringIntegralValidator(int)" validatorId="15"> 00327 <String integralValue="1" stringValue="true"/> 00328 <String integralValue="1" stringValue="yes"/> 00329 <String integralValue="1" stringValue="1"/> 00330 <String integralValue="1" stringValue="on"/> 00331 <String integralValue="0" stringValue="false"/> 00332 <String integralValue="0" stringValue="no"/> 00333 <String integralValue="0" stringValue="0"/> 00334 <String integralValue="0" stringValue="off"/> 00335 </Validator> 00336 00337 <Validator type="StringValidator" validatorId="14"> 00338 <String value="amd"/> 00339 <String value="package2"/> 00340 <String value="package3"/> 00341 </Validator> 00342 00343 <Validator defaultParameterName="randomize_input" integralValue="int" type="StringIntegralValidator(int)" validatorId="17"> 00344 <String integralValue="1" stringValue="true"/> 00345 <String integralValue="1" stringValue="yes"/> 00346 <String integralValue="1" stringValue="1"/> 00347 <String integralValue="1" stringValue="on"/> 00348 <String integralValue="0" stringValue="false"/> 00349 <String integralValue="0" stringValue="no"/> 00350 <String integralValue="0" stringValue="0"/> 00351 <String integralValue="0" stringValue="off"/> 00352 </Validator> 00353 00354 <Validator type="IntegerRangeListValidator(int)" unsorted="true" validatorId="16"/> 00355 00356 <Validator allowDouble="true" allowInt="true" allowString="true" prefferedType="double" type="anynumberValidator" validatorId="19"/> 00357 00358 <Validator allowDouble="true" allowInt="true" allowString="true" prefferedType="double" type="anynumberValidator" validatorId="20"/> 00359 00360 <Validator type="StringValidator" validatorId="18"> 00361 <String value="balance_object_count"/> 00362 <String value="balance_object_weight"/> 00363 <String value="multicriteria_minimize_total_weight"/> 00364 <String value="multicriteria_minimize_maximum_weight"/> 00365 <String value="multicriteria_balance_total_maximum"/> 00366 <String value="minimize_cut_edge_count"/> 00367 <String value="minimize_cut_edge_weight"/> 00368 <String value="minimize_neighboring_parts"/> 00369 <String value="minimize_boundary_vertices"/> 00370 </Validator> 00371 00372 <Validator allowDouble="true" allowInt="true" allowString="true" prefferedType="double" type="anynumberValidator" validatorId="21"/> 00373 00374 <Validator type="StringValidator" validatorId="22"> 00375 <String value="partition"/> 00376 <String value="repartition"/> 00377 <String value="maximize_overlap"/> 00378 </Validator> 00379 00380 <Validator type="StringValidator" validatorId="23"> 00381 <String value="matrix_rows"/> 00382 <String value="matrix_columns"/> 00383 <String value="matrix_nonzeros"/> 00384 <String value="mesh_elements"/> 00385 <String value="mesh_nodes"/> 00386 <String value="graph_edges"/> 00387 <String value="graph_vertices"/> 00388 <String value="coordinates"/> 00389 <String value="identifiers"/> 00390 </Validator> 00391 00392 <Validator type="StringValidator" validatorId="24"> 00393 <String value="hypergraph"/> 00394 <String value="graph"/> 00395 <String value="geometry"/> 00396 <String value="ids"/> 00397 </Validator> 00398 00399 <Validator type="StringValidator" validatorId="25"> 00400 <String value="rcb"/> 00401 <String value="multijagged"/> 00402 <String value="rib"/> 00403 <String value="hsfc"/> 00404 <String value="patoh"/> 00405 <String value="phg"/> 00406 <String value="metis"/> 00407 <String value="parmetis"/> 00408 <String value="scotch"/> 00409 <String value="ptscotch"/> 00410 <String value="block"/> 00411 <String value="cyclic"/> 00412 <String value="random"/> 00413 </Validator> 00414 00415 <Validator defaultParameterName="rectilinear_blocks" integralValue="int" type="StringIntegralValidator(int)" validatorId="26"> 00416 <String integralValue="1" stringValue="true"/> 00417 <String integralValue="1" stringValue="yes"/> 00418 <String integralValue="1" stringValue="1"/> 00419 <String integralValue="1" stringValue="on"/> 00420 <String integralValue="0" stringValue="false"/> 00421 <String integralValue="0" stringValue="no"/> 00422 <String integralValue="0" stringValue="0"/> 00423 <String integralValue="0" stringValue="off"/> 00424 </Validator> 00425 00426 <Validator defaultParameterName="average_cuts" integralValue="int" type="StringIntegralValidator(int)" validatorId="27"> 00427 <String integralValue="1" stringValue="true"/> 00428 <String integralValue="1" stringValue="yes"/> 00429 <String integralValue="1" stringValue="1"/> 00430 <String integralValue="1" stringValue="on"/> 00431 <String integralValue="0" stringValue="false"/> 00432 <String integralValue="0" stringValue="no"/> 00433 <String integralValue="0" stringValue="0"/> 00434 <String integralValue="0" stringValue="off"/> 00435 </Validator> 00436 00437 <Validator max="250" min="1" precision="0" step="1" type="EnhancedNumberValidator(int)" validatorId="28"/> 00438 00439 <Validator type="StringValidator" validatorId="29"> 00440 <String value="no"/> 00441 <String value="transpose"/> 00442 <String value="bipartite"/> 00443 </Validator> 00444 00445 <Validator defaultParameterName="subset_graph" integralValue="int" type="StringIntegralValidator(int)" validatorId="30"> 00446 <String integralValue="1" stringValue="true"/> 00447 <String integralValue="1" stringValue="yes"/> 00448 <String integralValue="1" stringValue="1"/> 00449 <String integralValue="1" stringValue="on"/> 00450 <String integralValue="0" stringValue="false"/> 00451 <String integralValue="0" stringValue="no"/> 00452 <String integralValue="0" stringValue="0"/> 00453 <String integralValue="0" stringValue="off"/> 00454 </Validator> 00455 00456 <Validator defaultParameterName="force_binary_search" integralValue="int" type="StringIntegralValidator(int)" validatorId="31"> 00457 <String integralValue="1" stringValue="true"/> 00458 <String integralValue="1" stringValue="yes"/> 00459 <String integralValue="1" stringValue="1"/> 00460 <String integralValue="1" stringValue="on"/> 00461 <String integralValue="0" stringValue="false"/> 00462 <String integralValue="0" stringValue="no"/> 00463 <String integralValue="0" stringValue="0"/> 00464 <String integralValue="0" stringValue="off"/> 00465 </Validator> 00466 00467 <Validator defaultParameterName="force_linear_search" integralValue="int" type="StringIntegralValidator(int)" validatorId="32"> 00468 <String integralValue="1" stringValue="true"/> 00469 <String integralValue="1" stringValue="yes"/> 00470 <String integralValue="1" stringValue="1"/> 00471 <String integralValue="1" stringValue="on"/> 00472 <String integralValue="0" stringValue="false"/> 00473 <String integralValue="0" stringValue="no"/> 00474 <String integralValue="0" stringValue="0"/> 00475 <String integralValue="0" stringValue="off"/> 00476 </Validator> 00477 00478 <Validator defaultParameterName="parallel_part_calculation_count" allowDouble="false" allowInt="true" allowString="true" prefferedType="int" type="anynumberValidator" validatorId="33"/> 00479 00480 00481 </Validators> 00482 00483 </ParameterList> 00484
1.7.6.1