fix: fixed log problem on Dockerfile by disabling output buffering

This commit is contained in:
2024-12-02 22:58:50 +01:00
parent 4e64705eb4
commit 92534f9e4d
2 changed files with 10 additions and 4 deletions

View File

@ -1,4 +1,4 @@
FROM ubuntu
FROM debian
RUN ["apt", "upgrade"]
RUN ["apt", "update"]
@ -30,7 +30,7 @@ COPY ./examples/dataset/training/ /app/dataset
VOLUME [ "/data" ]
ENV NETWORK_COMMAND="train"
ENV NETWORK_NAME="/data/network.csv"
ENV NETWORK_NAME="../data/network.csv"
ENV DATASET_DIR_PATH="dataset"
ENV BATCH_POURCENT="0.1"
ENV ITERATIONS=1000
@ -39,5 +39,7 @@ ENV WARMUP_ITERATIONS=100
ENV LEARNING_RATE="0.1"
ENV ADAFACTOR=1
CMD ./IA ${NETWORK_COMMAND} ${NETWORK_NAME} ${DATASET_DIR_PATH} ${BATCH_POURCENT} ${ITERATIONS} ${WARMUP} ${WARMUP_ITERATIONS} ${LEARNING_RATE} ${ADAFACTOR}
#ENTRYPOINT ./IA help
ENTRYPOINT /app/IA ${NETWORK_COMMAND} ${NETWORK_NAME} ${DATASET_DIR_PATH} ${BATCH_POURCENT} ${ITERATIONS} ${WARMUP} ${WARMUP_ITERATIONS} ${LEARNING_RATE} ${ADAFACTOR}
#ENTRYPOINT [ "/app/IA", "train", "../data/network.csv", "./dataset", "0.1", "1000", "10", "100" ]
#ENTRYPOINT [ "./IA", ${NETWORK_COMMAND}, ${NETWORK_NAME}, ${DATASET_DIR_PATH}, ${BATCH_POURCENT}, ${ITERATIONS}, ${WARMUP}, ${WARMUP_ITERATIONS}, ${LEARNING_RATE}, ${ADAFACTOR} ]

View File

@ -15,6 +15,8 @@ void network_train(neural_network *network, char *training_data_dir, char *save_
init_neural_network(network);
save_neural_network(network, save_path);
size_t data_len;
training_data *training_datas = load_dataset(training_data_dir, AdaFactor, &data_len);
@ -80,6 +82,8 @@ int main(int argc, char *argv[])
(void)argc;
char *network_application_directory = path_get_directory(argv[0]);
setvbuf(stdout, NULL, _IONBF, 0);
if (argc < 2)
errx(EXIT_FAILURE, "missing arguments, usage: ./network <train, retrain, use, test or help>");
@ -96,7 +100,7 @@ int main(int argc, char *argv[])
char *data_dir = combine_path(network_application_directory, argv[3]);
double batch_pourcent = atof(argv[4]);
if (batch_pourcent > 1)
if (batch_pourcent > 1.0 || batch_pourcent <= 0.0)
errx(EXIT_FAILURE, "invalid argument: <batch_pourcent> must be between 0 and 1");
size_t iterations = (size_t)atoi(argv[5]);
size_t warmup = (size_t)atoi(argv[6]);