zoukankan      html  css  js  c++  java
  • 软件工程——数独 最终Release版本性能测试结果

    测试环境

    • Windows10 64bit
    • Intel VTune Profile
    • AMD 2700x

    sudoku.exe -c 1000000

    生成1e6的数据量运行状况如下。

    总用时

     最耗时函数

    void copySudoku(const Sudoku& src, char* dst)
        {
            int k = 0;
            for (int i = 1; i < N_ROW_SUDOKU; i++)
            {
                for (int j = 1; j < N_ROW_SUDOKU; j++)
                {
                    dst[k++] = src[i][j] + '0';
                    dst[k++] = ' ';
                }
                dst[k - 1] = '
    ';//行末无空格
            }
            dst[k++] = '
    ';
            p_start_buff += k;
            return;
        }
    if (is_end)
            {
                if (h_sudoku_txt)
                {
                    WriteFile(
                        h_sudoku_txt,
                        SudokuPrinter::buff,
                        SudokuPrinter::num_sudoku_in_buff * SudokuPrinter::num_bytes_of_sudoku - 2,//最后两个换行不写入,即最后一个数独后面没有空行
                        &written,
                        NULL
                    );
                    closeTxt();
                }
            }
            else
            {
                if (h_sudoku_txt)
                    WriteFile(h_sudoku_txt,
                        SudokuPrinter::buff,
                        SudokuPrinter::num_sudoku_in_buff * SudokuPrinter::num_bytes_of_sudoku,
                        &written,
                        NULL
                    );
            }

    有效CPU利用率直方图

    从下图可以看出生成数独环节CPU占用率并不高。

     软件详细信息

    程序占用内存仅为2MB

    sudoku.exe -s problem.txt

    求解1e6的数独,每个数独至少30个空,分析如下:

    运行时间

    最耗时函数

    solveSudoku是求解数独的核心函数,也是占用时间最多的。

    CPU利用率

    从下图可以看出CPU利用率并不是很高。

    软件详细信息

    可以看出软件占用内存非常小,仅有4MB

    总结

    综合看来,数独生成和求解算法还是相当高效的。其中读取和写入并没有占据太多程序时间。

  • 相关阅读:
    html 注释和特殊字符
    html 锚点链接
    html 链接标签
    spring 利用工厂模式解耦
    html 路径
    html 图像标签
    html div和span标签
    html 文本格式化标签
    P5358 [SDOI2019]快速查询
    luoguP2679 子串
  • 原文地址:https://www.cnblogs.com/harrypotterjackson/p/12209498.html
Copyright © 2011-2022 走看看