Main.cpp 2.09 KB
Newer Older
xiaotong committed
1
/* NiuTrans.Tensor - an open-source tensor library
xiaotong committed
2
 * Copyright (C) 2018, Natural Language Processing Lab, Northestern University.
xiaotong committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
 * 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.
 */

/*
xiaotong committed
19
 * $Created by: XIAO Tong (xiaotong@mail.neu.edu.cn) 2018-07-10
xiaotong committed
20 21 22
 */

#include <stdio.h>
23 24 25 26 27 28 29
#include "./network/XNet.h"
#include "./tensor/XUtility.h"
#include "./tensor/function/FHeader.h"
#include "./tensor/core/CHeader.h"
#include "./tensor/test/Test.h"
#include "./sample/fnnlm/FNNLM.h"
#include "./sample/transformer/Transformer.h"
xiaotong committed
30 31 32 33 34

//#define CRTDBG_MAP_ALLOC
//#include <stdlib.h>
//#include <crtdbg.h>

35
void BackwardTest();
36 37
void TransposeTest();
void SumDimTest();
xiaotong committed
38

39 40
using namespace nts;
using namespace fnnlm;
41
using namespace transformer;
xiaotong committed
42 43 44

int main( int argc, const char ** argv )
{
xiaotong committed
45 46
    //_CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF);
    //_CrtSetBreakAlloc(2708);
47

liyinqiao committed
48 49 50
    if(argc > 1 && !strcmp(argv[1], "-test"))
        Test();
    else if(argc > 1 && !strcmp(argv[1], "-fnnlm"))
51
        FNNLMMain(argc - 1, argv + 1);
52 53
    else if(argc > 1 && !strcmp(argv[1], "-t2t"))
        TransformerMain(argc - 1, argv + 1);
xiaotong committed
54 55 56 57
    else{
        fprintf(stderr, "Thanks for using NiuTrans.Network! This is a library for building\n");
        fprintf(stderr, "neural networks in an easy way. \n\n");
        fprintf(stderr, "Run this program with \"-test\" for unit test!\n");
58
        fprintf(stderr, "Or run this program with \"-fnnlm\" for sample FNNLM!\n");
liyinqiao committed
59
        fprintf(stderr, "Or run this program with \"-t2t\" for sample Transformer!\n");
xiaotong committed
60
    }
xiaotong committed
61

xiaotong committed
62 63 64 65
    //_CrtDumpMemoryLeaks();
    
    return 0;
}