/* * Copyright 2014-2021 NVIDIA Corporation. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #pragma once #include #include "NvPerfInit.h" #include "NvPerfReportDefinition.h" #include "NvPerfReportDefinitionGV100.h" #include "NvPerfReportDefinitionTU10X.h" #include "NvPerfReportDefinitionTU11X.h" #include "NvPerfReportDefinitionGA10X.h" namespace nv { namespace perf { namespace PerRangeReport { inline ReportDefinition GetReportDefinition(const char* pChipName) { if (!strcmp(pChipName, "GV100")) { return gv100::PerRangeReport::GetReportDefinition(); } else if (!strcmp(pChipName, "TU102") || !strcmp(pChipName, "TU104") || !strcmp(pChipName, "TU106")) { return tu10x::PerRangeReport::GetReportDefinition(); } else if (!strcmp(pChipName, "TU116") || !strcmp(pChipName, "TU117")) { return tu11x::PerRangeReport::GetReportDefinition(); } else if (!strcmp(pChipName, "GA102") || !strcmp(pChipName, "GA104") || !strcmp(pChipName, "GA106")) { return ga10x::PerRangeReport::GetReportDefinition(); } return {}; } } // namespace PerRangeReport namespace SummaryReport { inline ReportDefinition GetReportDefinition(const char* pChipName) { if (!strcmp(pChipName, "GV100")) { return gv100::SummaryReport::GetReportDefinition(); } else if (!strcmp(pChipName, "TU102") || !strcmp(pChipName, "TU104") || !strcmp(pChipName, "TU106")) { return tu10x::SummaryReport::GetReportDefinition(); } else if (!strcmp(pChipName, "TU116") || !strcmp(pChipName, "TU117")) { return tu11x::SummaryReport::GetReportDefinition(); } else if (!strcmp(pChipName, "GA102") || !strcmp(pChipName, "GA104") || !strcmp(pChipName, "GA106")) { return ga10x::SummaryReport::GetReportDefinition(); } return {}; } } // namespace SummaryReport } }