Projeto LI3
Arquitetura do projeto
Relatórios
Requerimentos
- glib2 para manipulação das coleções de dados;
install
apt install gcc make libglib2.0-dev libgtk2.0-dev gdb valgrind -y
Utilização
cd trabalho-pratico/
make
Modo Batch:
./programa-principal <dir_with_csvs> <input_file_path>
Modo Interativo:
./programa-principal
exemplo de utilização
Enter dataset path: dataset
Number of drivers parsed: 10000
Number of users parsed: 100000
Number of rides parsed: 1000000
$ 1 SaCruz110
Santiago Cruz;M;31;3.200;5;50.340
$ 3 2
Anita-PetPinto38;Anita-Petra Pinto;240
REsteves70;Raquel Esteves;234
$ 4 Braga
10.062
$ (Ctrl + D)
Exit with success
Testagem
programa-testes:
make programa-testes
./programa-testes <dir_with_csvs> <dir_with_input_and_outputs>
exemplo de output
Teste de desempenho - Parsing dos dados
Number of drivers parsed: 10000
Number of users parsed: 100000
Number of rides parsed: 1000000
Parsing data time: 8.66s
Teste de desempenho - Avaliação de queries
Query 1 | 0.00000175s | "1 SaCruz110"
Query 2 | 0.00003250s | "2 50"
Query 3 | 0.00002250s | "3 50"
Query 4 | 0.00000300s | "4 Braga"
Query 5 | 0.02394250s | "5 01/01/2021 01/02/2021"
Query 6 | 0.06587550s | "6 Porto 01/01/2021 01/02/2021"
Query 7 | 0.00001600s | "7 50 Lisboa"
Query 8 | 0.00361250s | "8 M 12"
Query 9 | 0.01861500s | "9 01/01/2021 01/02/2021"
(...)
Teste funcional - Validação de queries
command1_output.txt: Pass ✔
command2_output.txt: Pass ✔
command3_output.txt: Pass ✔
command4_output.txt: Pass ✔
command5_output.txt: Pass ✔
command6_output.txt: Pass ✔
command7_output.txt: Pass ✔
command8_output.txt: Pass ✔
command9_output.txt: Pass ✔
command10_output.txt: Pass ✔
command11_output.txt: Pass ✔
command12_output.txt: Pass ✔
command13_output.txt: Pass ✔
command14_output.txt: Pass ✔
command15_output.txt: Pass ✔
command16_output.txt: Pass ✔
command17_output.txt: Pass ✔
command18_output.txt: Pass ✔
command19_output.txt: Pass ✔
malloc_stats
Arena 0:
system bytes = 550182912
in use bytes = 550137440
Total (incl. mmap):
system bytes = 1071362048
in use bytes = 1071316576
max mmap regions = 30
max mmap bytes = 588943360
malloc_stats after freeing memory
Arena 0:
system bytes = 550182912
in use bytes = 259894208
Total (incl. mmap):
system bytes = 1021255680
in use bytes = 730966976
max mmap regions = 30
max mmap bytes = 588943360
Debug
make debug
GDB:
gdb ./programa-principal
Valgrind:
valgrind ./programa-principal <dir_with_csvs> <input_file_path>
Realizado por:
a100711,João Andrade Rodrigues,joaorodriguesss
a95485,Miguel Torres Carvalho,migueltc13
a100754,Rafael Vale da Costa Peixoto,Rafa-Peixoto