big silly
parent
cacc94d937
commit
9197bfdc34
|
@ -0,0 +1,268 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="AutoImportSettings">
|
||||||
|
<option name="autoReloadType" value="SELECTIVE" />
|
||||||
|
</component>
|
||||||
|
<component name="BackendCodeEditorMiscSettings">
|
||||||
|
<option name="/Default/RiderDebugger/RiderRestoreDecompile/RestoreDecompileSetting/@EntryValue" value="false" type="bool" />
|
||||||
|
<option name="/Default/Housekeeping/GlobalSettingsUpgraded/IsUpgraded/@EntryValue" value="true" type="bool" />
|
||||||
|
<option name="/Default/Housekeeping/FeatureSuggestion/FeatureSuggestionManager/DisabledSuggesters/=SwitchToGoToActionSuggester/@EntryIndexedValue" value="true" type="bool" />
|
||||||
|
<option name="/Default/Environment/Hierarchy/GeneratedFilesCacheKey/Timestamp/@EntryValue" value="55" type="long" />
|
||||||
|
<option name="/Default/Housekeeping/OptionsDialog/SelectedPageId/@EntryValue" value="CppFormatterOtherPage" type="string" />
|
||||||
|
<option name="/Default/Housekeeping/Search/HighlightUsagesHintUsed/@EntryValue" value="true" type="bool" />
|
||||||
|
<option name="/Default/Housekeeping/FeatureSuggestion/FeatureSuggestionManager/DisabledSuggesters/=SwitchToGoToActionSuggester/@EntryIndexRemoved" />
|
||||||
|
</component>
|
||||||
|
<component name="CMakePresetLoader">{
|
||||||
|
"useNewFormat": true
|
||||||
|
}</component>
|
||||||
|
<component name="CMakeProjectFlavorService">
|
||||||
|
<option name="flavorId" value="CMakePlainProjectFlavor" />
|
||||||
|
</component>
|
||||||
|
<component name="CMakeReloadState">
|
||||||
|
<option name="reloaded" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="CMakeRunConfigurationManager">
|
||||||
|
<generated>
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="COSC-4P80-Final-Project" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="glfw" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="uninstall" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="BLT_WITH_GRAPHICS" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="BLT" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="freetype" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="opennn" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="dlib" />
|
||||||
|
<config projectName="COSC-4P80-Final-Project" targetName="update_mappings" />
|
||||||
|
</generated>
|
||||||
|
</component>
|
||||||
|
<component name="CMakeSettings">
|
||||||
|
<configurations>
|
||||||
|
<configuration PROFILE_NAME="Debug" ENABLED="true" CONFIG_NAME="Debug" />
|
||||||
|
<configuration PROFILE_NAME="Release" ENABLED="true" CONFIG_NAME="Release" />
|
||||||
|
<configuration PROFILE_NAME="RelWithDebInfo" ENABLED="true" CONFIG_NAME="RelWithDebInfo" />
|
||||||
|
<configuration PROFILE_NAME="RelWithDebInfo Addrsan" ENABLED="true" CONFIG_NAME="RelWithDebInfo" GENERATION_OPTIONS="-DENABLE_ADDRSAN=ON -DENABLE_UBSAN=ON" />
|
||||||
|
</configurations>
|
||||||
|
</component>
|
||||||
|
<component name="ChangeListManager">
|
||||||
|
<list default="true" id="9c238110-7b79-4fb8-a517-1a6ad61b867f" name="Changes" comment="">
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/CMakeLists.txt" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/CMakeLists.txt" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/build_emscript.sh" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/build_emscript.sh" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/cloc.sh" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/cloc.sh" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/commit.py" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/commit.py" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/libraries/BLT" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/libraries/BLT" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/lib/blt-with-graphics/resources/fonts/a.out" beforeDir="false" afterPath="$PROJECT_DIR$/lib/blt-with-graphics/resources/fonts/a.out" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/MNIST.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/src/MNIST.cpp" afterDir="false" />
|
||||||
|
</list>
|
||||||
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||||
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||||
|
</component>
|
||||||
|
<component name="ClangdSettings">
|
||||||
|
<option name="formatViaClangd" value="false" />
|
||||||
|
</component>
|
||||||
|
<component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Release" />
|
||||||
|
<component name="Git.Settings">
|
||||||
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||||
|
</component>
|
||||||
|
<component name="HighlightingSettingsPerFile">
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
<setting file="mock:///dummy.cpp" root0="SKIP_HIGHLIGHTING" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectApplicationVersion">
|
||||||
|
<option name="ide" value="CLion" />
|
||||||
|
<option name="majorVersion" value="2024" />
|
||||||
|
<option name="minorVersion" value="3" />
|
||||||
|
<option name="productBranch" value="Classic" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectColorInfo">{
|
||||||
|
"associatedIndex": 0
|
||||||
|
}</component>
|
||||||
|
<component name="ProjectId" id="2pxLBGwjdrQBWWQcqWdqZJ2ET2e" />
|
||||||
|
<component name="ProjectViewState">
|
||||||
|
<option name="hideEmptyMiddlePackages" value="true" />
|
||||||
|
<option name="showLibraryContents" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PropertiesComponent">{
|
||||||
|
"keyToString": {
|
||||||
|
"CMake Application.COSC-4P80-Final-Project.executor": "Run",
|
||||||
|
"RunOnceActivity.RadMigrateCodeStyle": "true",
|
||||||
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
|
"RunOnceActivity.cidr.known.project.marker": "true",
|
||||||
|
"RunOnceActivity.readMode.enableVisualFormatting": "true",
|
||||||
|
"RunOnceActivity.west.config.association.type.startup.service": "true",
|
||||||
|
"SHARE_PROJECT_CONFIGURATION_FILES": "true",
|
||||||
|
"cf.first.check.clang-format": "false",
|
||||||
|
"cidr.known.project.marker": "true",
|
||||||
|
"git-widget-placeholder": "main",
|
||||||
|
"last_opened_file_path": "/home/brett/Documents/Brock/CS 4P80/COSC-4P80-Final-Project",
|
||||||
|
"node.js.detected.package.eslint": "true",
|
||||||
|
"node.js.detected.package.tslint": "true",
|
||||||
|
"node.js.selected.package.eslint": "(autodetect)",
|
||||||
|
"node.js.selected.package.tslint": "(autodetect)",
|
||||||
|
"nodejs_package_manager_path": "npm",
|
||||||
|
"settings.editor.selected.configurable": "preferences.lookFeel",
|
||||||
|
"vue.rearranger.settings.migration": "true"
|
||||||
|
}
|
||||||
|
}</component>
|
||||||
|
<component name="RunManager" selected="CMake Application.COSC-4P80-Final-Project">
|
||||||
|
<configuration default="true" type="CLionExternalRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true">
|
||||||
|
<method v="2">
|
||||||
|
<option name="CLION.EXTERNAL.BUILD" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="BLT" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="BLT" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="BLT_WITH_GRAPHICS" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="BLT_WITH_GRAPHICS" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="COSC-4P80-Final-Project" type="CMakeRunConfiguration" factoryName="Application" PROGRAM_PARAMS="wow" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="COSC-4P80-Final-Project" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="COSC-4P80-Final-Project" RUN_TARGET_NAME="COSC-4P80-Final-Project">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="dlib" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="dlib" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="freetype" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="freetype" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="glfw" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="glfw" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="uninstall" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="uninstall" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration name="update_mappings" type="CMakeRunConfiguration" factoryName="Application" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" EMULATE_TERMINAL="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="COSC-4P80-Final-Project" TARGET_NAME="update_mappings" CONFIG_NAME="Debug">
|
||||||
|
<method v="2">
|
||||||
|
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||||
|
</method>
|
||||||
|
</configuration>
|
||||||
|
<configuration default="true" type="LATEX_RUN_CONFIGURATION" factoryName="LaTeX configuration factory">
|
||||||
|
<texify>
|
||||||
|
<compiler>PDFLATEX</compiler>
|
||||||
|
<compiler-path />
|
||||||
|
<sumatra-path />
|
||||||
|
<pdf-viewer>OKULAR</pdf-viewer>
|
||||||
|
<viewer-command />
|
||||||
|
<compiler-arguments />
|
||||||
|
<envs />
|
||||||
|
<before-run-command />
|
||||||
|
<main-file />
|
||||||
|
<output-path>{projectDir}/out</output-path>
|
||||||
|
<auxil-path>{projectDir}/auxil</auxil-path>
|
||||||
|
<compile-twice>false</compile-twice>
|
||||||
|
<output-format>PDF</output-format>
|
||||||
|
<latex-distribution>TEXLIVE</latex-distribution>
|
||||||
|
<has-been-run>false</has-been-run>
|
||||||
|
<bib-run-config>[]</bib-run-config>
|
||||||
|
<makeindex-run-config>[]</makeindex-run-config>
|
||||||
|
</texify>
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<configuration default="true" type="MAKEINDEX_RUN_CONFIGURATION" factoryName="LaTeX configuration factory">
|
||||||
|
<texify-makeindex>
|
||||||
|
<program>MAKEINDEX</program>
|
||||||
|
<main-file />
|
||||||
|
<command-line-args />
|
||||||
|
<work-dir />
|
||||||
|
</texify-makeindex>
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<list>
|
||||||
|
<item itemvalue="CMake Application.BLT_WITH_GRAPHICS" />
|
||||||
|
<item itemvalue="CMake Application.BLT" />
|
||||||
|
<item itemvalue="CMake Application.COSC-4P80-Final-Project" />
|
||||||
|
<item itemvalue="CMake Application.dlib" />
|
||||||
|
<item itemvalue="CMake Application.freetype" />
|
||||||
|
<item itemvalue="CMake Application.uninstall" />
|
||||||
|
<item itemvalue="CMake Application.glfw" />
|
||||||
|
<item itemvalue="CMake Application.update_mappings" />
|
||||||
|
</list>
|
||||||
|
</component>
|
||||||
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||||
|
<component name="TaskManager">
|
||||||
|
<task active="true" id="Default" summary="Default task">
|
||||||
|
<changelist id="9c238110-7b79-4fb8-a517-1a6ad61b867f" name="Changes" comment="" />
|
||||||
|
<created>1733702642308</created>
|
||||||
|
<option name="number" value="Default" />
|
||||||
|
<option name="presentableId" value="Default" />
|
||||||
|
<updated>1733702642308</updated>
|
||||||
|
<workItem from="1733702643366" duration="34000" />
|
||||||
|
<workItem from="1733702709776" duration="35920000" />
|
||||||
|
<workItem from="1733851235937" duration="19449000" />
|
||||||
|
<workItem from="1733939842723" duration="14770000" />
|
||||||
|
<workItem from="1734029532042" duration="137000" />
|
||||||
|
<workItem from="1734403691061" duration="3000" />
|
||||||
|
<workItem from="1735592453031" duration="11224000" />
|
||||||
|
<workItem from="1736192324957" duration="355000" />
|
||||||
|
<workItem from="1736204332671" duration="5499000" />
|
||||||
|
<workItem from="1736295645857" duration="5415000" />
|
||||||
|
<workItem from="1736362779013" duration="9601000" />
|
||||||
|
</task>
|
||||||
|
<servers />
|
||||||
|
</component>
|
||||||
|
<component name="TypeScriptGeneratedFilesManager">
|
||||||
|
<option name="version" value="3" />
|
||||||
|
</component>
|
||||||
|
<component name="VCPKGProject">
|
||||||
|
<isAutomaticCheckingOnLaunch value="false" />
|
||||||
|
<isAutomaticFoundErrors value="true" />
|
||||||
|
<isAutomaticReloadCMake value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="XSLT-Support.FileAssociations.UIState">
|
||||||
|
<expand />
|
||||||
|
<select />
|
||||||
|
</component>
|
||||||
|
</project>
|
|
@ -1,5 +1,5 @@
|
||||||
cmake_minimum_required(VERSION 3.25)
|
cmake_minimum_required(VERSION 3.25)
|
||||||
project(COSC-4P80-Final-Project VERSION 0.0.12)
|
project(COSC-4P80-Final-Project VERSION 0.0.13)
|
||||||
|
|
||||||
option(ENABLE_ADDRSAN "Enable the address sanitizer" OFF)
|
option(ENABLE_ADDRSAN "Enable the address sanitizer" OFF)
|
||||||
option(ENABLE_UBSAN "Enable the ub sanitizer" OFF)
|
option(ENABLE_UBSAN "Enable the ub sanitizer" OFF)
|
||||||
|
|
|
@ -38,6 +38,7 @@ namespace fp
|
||||||
std::atomic_bool break_flag = false;
|
std::atomic_bool break_flag = false;
|
||||||
std::atomic_bool stop_flag = false;
|
std::atomic_bool stop_flag = false;
|
||||||
std::atomic_bool learn_flag = false;
|
std::atomic_bool learn_flag = false;
|
||||||
|
std::atomic_int64_t last_epoch = -1;
|
||||||
|
|
||||||
void run_python_line_graph(const std::string& title, const std::string& output_file, const std::string& csv1, const std::string& csv2,
|
void run_python_line_graph(const std::string& title, const std::string& output_file, const std::string& csv1, const std::string& csv2,
|
||||||
const blt::size_t pos_forward, const blt::size_t pos_deep)
|
const blt::size_t pos_forward, const blt::size_t pos_deep)
|
||||||
|
@ -364,6 +365,27 @@ namespace fp
|
||||||
v /= run_stats.size();
|
v /= run_stats.size();
|
||||||
return stats;
|
return stats;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
friend std::ofstream& operator<<(std::ofstream& file, const network_average_stats_t& stats)
|
||||||
|
{
|
||||||
|
file << stats.run_stats.size();
|
||||||
|
for (const auto& v : stats.run_stats)
|
||||||
|
file << v << "---\n";
|
||||||
|
return file;
|
||||||
|
}
|
||||||
|
|
||||||
|
friend std::ifstream& operator>>(std::ifstream& file, network_average_stats_t& stats)
|
||||||
|
{
|
||||||
|
blt::size_t size;
|
||||||
|
file >> size;
|
||||||
|
for (blt::size_t i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
stats.run_stats.emplace_back();
|
||||||
|
file >> stats.run_stats.back();
|
||||||
|
file.ignore(4);
|
||||||
|
}
|
||||||
|
return file;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template <blt::i64 batch_size = batch_size, typename NetworkType>
|
template <blt::i64 batch_size = batch_size, typename NetworkType>
|
||||||
|
@ -435,6 +457,8 @@ namespace fp
|
||||||
trainer.set_synchronization_file("mnist_sync_" + ident, std::chrono::seconds(20));
|
trainer.set_synchronization_file("mnist_sync_" + ident, std::chrono::seconds(20));
|
||||||
|
|
||||||
blt::size_t epochs = 0;
|
blt::size_t epochs = 0;
|
||||||
|
if (last_epoch > 0)
|
||||||
|
epochs = static_cast<blt::size_t>(last_epoch);
|
||||||
blt::ptrdiff_t epoch_pos = 0;
|
blt::ptrdiff_t epoch_pos = 0;
|
||||||
for (; epochs < trainer.get_max_num_epochs() && trainer.get_learning_rate() >= trainer.get_min_learning_rate(); epochs++)
|
for (; epochs < trainer.get_max_num_epochs() && trainer.get_learning_rate() >= trainer.get_min_learning_rate(); epochs++)
|
||||||
{
|
{
|
||||||
|
@ -477,6 +501,7 @@ namespace fp
|
||||||
if (break_flag)
|
if (break_flag)
|
||||||
{
|
{
|
||||||
break_flag = false;
|
break_flag = false;
|
||||||
|
last_epoch = epochs;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// dlib::serialize("mnist_network_" + ident + ".dat") << network;
|
// dlib::serialize("mnist_network_" + ident + ".dat") << network;
|
||||||
|
@ -520,7 +545,31 @@ namespace fp
|
||||||
network_average_stats_t stats{};
|
network_average_stats_t stats{};
|
||||||
std::vector<batch_stats_t> test_stats;
|
std::vector<batch_stats_t> test_stats;
|
||||||
|
|
||||||
for (blt::i32 i = 0; i < runs; i++)
|
blt::i32 i = 0;
|
||||||
|
if (std::filesystem::exists(path + "/state.bin"))
|
||||||
|
{
|
||||||
|
std::ifstream state{path + "/state.bin", std::ios::binary | std::ios::in};
|
||||||
|
if (!state.is_open())
|
||||||
|
{
|
||||||
|
BLT_ERROR("Failed to open state file!");
|
||||||
|
std::exit(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
state >> i;
|
||||||
|
blt::i64 load_epoch = 0;
|
||||||
|
state >> load_epoch;
|
||||||
|
last_epoch = load_epoch;
|
||||||
|
state >> stats;
|
||||||
|
blt::size_t test_stats_size = 0;
|
||||||
|
state >> test_stats_size;
|
||||||
|
for (blt::size_t _ = 0; _ < test_stats_size; _++)
|
||||||
|
{
|
||||||
|
test_stats.emplace_back();
|
||||||
|
state >> test_stats.back();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (; i < runs; i++)
|
||||||
{
|
{
|
||||||
if (stop_flag)
|
if (stop_flag)
|
||||||
break;
|
break;
|
||||||
|
@ -546,6 +595,20 @@ namespace fp
|
||||||
average += v;
|
average += v;
|
||||||
average /= runs;
|
average /= runs;
|
||||||
|
|
||||||
|
std::ofstream state{path + "/state.bin", std::ios::binary | std::ios::out};
|
||||||
|
if (!state.is_open())
|
||||||
|
{
|
||||||
|
BLT_ERROR("Failed to open state file!");
|
||||||
|
std::exit(-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
state << i;
|
||||||
|
state << last_epoch.load(std::memory_order_relaxed);
|
||||||
|
state << stats;
|
||||||
|
state << test_stats.size();
|
||||||
|
for (const auto& v : test_stats)
|
||||||
|
state << v;
|
||||||
|
|
||||||
return {stats, average};
|
return {stats, average};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -583,11 +646,11 @@ namespace fp
|
||||||
blt::size_t pos = 0;
|
blt::size_t pos = 0;
|
||||||
if (!blt::string::ends_with(binary_directory, '/'))
|
if (!blt::string::ends_with(binary_directory, '/'))
|
||||||
{
|
{
|
||||||
pos = binary_directory.find_last_of('/') - 1;
|
pos = binary_directory.find_last_of('/');
|
||||||
binary_directory += '/';
|
binary_directory += '/';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
pos = binary_directory.substr(0, binary_directory.size() - 1).find_last_of('/') - 1;
|
pos = binary_directory.substr(0, binary_directory.size() - 1).find_last_of('/');
|
||||||
python_dual_stacked_graph_program = binary_directory.substr(0, pos) + "/graph.py";
|
python_dual_stacked_graph_program = binary_directory.substr(0, pos) + "/graph.py";
|
||||||
BLT_TRACE(binary_directory);
|
BLT_TRACE(binary_directory);
|
||||||
BLT_TRACE(python_dual_stacked_graph_program);
|
BLT_TRACE(python_dual_stacked_graph_program);
|
||||||
|
|
Loading…
Reference in New Issue