aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgi Gerganov <ggerganov@gmail.com>2023-03-13 19:15:08 +0200
committerGeorgi Gerganov <ggerganov@gmail.com>2023-03-13 19:15:08 +0200
commit4497ad819c0010a8b19ffeaf8c0428eb7558d3e0 (patch)
tree0bd1014ea30b85a3b36a8aa60906972c2c3cadce
parented6849cc07a8973e5d31947b9df2df2da975ac96 (diff)
Print system information
-rw-r--r--main.cpp33
1 files changed, 30 insertions, 3 deletions
diff --git a/main.cpp b/main.cpp
index c96f9ed..6dc9ae9 100644
--- a/main.cpp
+++ b/main.cpp
@@ -765,6 +765,26 @@ void sigint_handler(int signo) {
}
#endif
+const char * llama_print_system_info(void) {
+ static std::string s;
+
+ s = "";
+ s += "AVX = " + std::to_string(ggml_cpu_has_avx()) + " | ";
+ s += "AVX2 = " + std::to_string(ggml_cpu_has_avx2()) + " | ";
+ s += "AVX512 = " + std::to_string(ggml_cpu_has_avx512()) + " | ";
+ s += "FMA = " + std::to_string(ggml_cpu_has_fma()) + " | ";
+ s += "NEON = " + std::to_string(ggml_cpu_has_neon()) + " | ";
+ s += "ARM_FMA = " + std::to_string(ggml_cpu_has_arm_fma()) + " | ";
+ s += "F16C = " + std::to_string(ggml_cpu_has_f16c()) + " | ";
+ s += "FP16_VA = " + std::to_string(ggml_cpu_has_fp16_va()) + " | ";
+ s += "WASM_SIMD = " + std::to_string(ggml_cpu_has_wasm_simd()) + " | ";
+ s += "BLAS = " + std::to_string(ggml_cpu_has_blas()) + " | ";
+ s += "SSE3 = " + std::to_string(ggml_cpu_has_sse3()) + " | ";
+ s += "VSX = " + std::to_string(ggml_cpu_has_vsx()) + " | ";
+
+ return s.c_str();
+}
+
int main(int argc, char ** argv) {
ggml_time_init();
const int64_t t_main_start_us = ggml_time_us();
@@ -807,6 +827,13 @@ int main(int argc, char ** argv) {
t_load_us = ggml_time_us() - t_start_us;
}
+ // print system information
+ {
+ fprintf(stderr, "\n");
+ fprintf(stderr, "system_info: n_threads = %d / %d | %s\n",
+ params.n_threads, std::thread::hardware_concurrency(), llama_print_system_info());
+ }
+
int n_past = 0;
int64_t t_sample_us = 0;
@@ -834,7 +861,7 @@ int main(int argc, char ** argv) {
struct sigaction sigint_action;
sigint_action.sa_handler = sigint_handler;
sigemptyset (&sigint_action.sa_mask);
- sigint_action.sa_flags = 0;
+ sigint_action.sa_flags = 0;
sigaction(SIGINT, &sigint_action, NULL);
#endif
@@ -967,7 +994,7 @@ int main(int argc, char ** argv) {
is_interacting = true;
}
if (is_interacting) {
- // currently being interactive
+ // currently being interactive
bool another_line=true;
while (another_line) {
fflush(stdout);
@@ -999,7 +1026,7 @@ int main(int argc, char ** argv) {
input_noecho = true; // do not echo this again
}
- is_interacting = false;
+ is_interacting = false;
}
}