これはYaneuraOuをRaspberryPi3 ModelB上のRaspbianで動作させた時のメモです。
YaneuraOuのバイナリを作成してShogiGUIのエンジンとして登録するとこまで。
#Raspbianにsshで入ることができて、そこでgitやmake,clang等が使える環境であること。
YaneuraOu の取得と patch を ddc0b34 に適用
$ cd ~/ && mkdir work && cd work
cmake_minimum_required(VERSION 2.8) | |
add_definitions("-DYANEURAOU_2017_EARLY_ENGINE") | |
# add_definitions("-DHELP_MATE_ENGINE") | |
# add_definitions("-DMATE_ENGINE") | |
set(CMAKE_CXX_COMPILER "clang++") | |
add_definitions("-std=c++14 -fno-exceptions -fno-rtti -Wextra -Ofast -MMD -MP -fpermissive") | |
add_definitions("-stdlib=libstdc++ -Wno-unused-parameter") | |
add_definitions("-D_LINUX -DUNICODE -DNO_EXCEPTIONS") |
cmake_minimum_required(VERSION 2.8) | |
set(CMAKE_CXX_COMPILER "clang++") | |
add_definitions("-std=c++14 -fno-exceptions -fno-rtti -Wextra -Ofast -MMD -MP") | |
add_definitions("-Wno-unused-parameter") | |
set(CMAKE_EXE_LINKER_FLAGS "-Wl,-s -v") | |
if(NOT DEFINED target) | |
set(target "avx2") | |
endif() | |
if(target STREQUAL avx2) |
// 捨てコード。 | |
// 某手書きタブレットが吐く筆跡のベクター情報の入った json ファイルを svg にして、筆跡を辿って細々と連番画像ファイル化 | |
// 吐かれた画像を ffmpeg コマンドで乱暴に動画化する | |
#include <stdbool.h> | |
#include <unistd.h> | |
#include <getopt.h> | |
#include <string.h> | |
#include <limits.h> | |
#include <dirent.h> | |
#include <sys/stat.h> |
// ** きたないコード ** | |
// video(0) とか IPカメラとか mjpeg とか、opencv のvideo入力ソースから読んで、fb にマンガカメラ風の映像を垂れ流すやつ。 | |
// ついでなので、日時とか biff とかを書いていた。 | |
// Cortex-A8 800MHzに LCD-8000U を繋いで動作。 | |
// g++ gomi.cc -o cam `pkg-config --cflags opencv` `pkg-config --libs opencv` | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <stdio.h> | |
#include <sys/mman.h> | |
#include <linux/fb.h> |
diff --git a/hls/ngx_rtmp_hls_module.c b/hls/ngx_rtmp_hls_module.c | |
index d41daaa..8c1a834 100644 | |
--- a/hls/ngx_rtmp_hls_module.c | |
+++ b/hls/ngx_rtmp_hls_module.c | |
@@ -2322,7 +2322,7 @@ ngx_rtmp_hls_cleanup_dir(ngx_str_t *ppath, ngx_msec_t playlen) | |
name.data[name.len - 2] == 't' && | |
name.data[name.len - 1] == 's') | |
{ | |
- max_age = playlen / 500; | |
+ max_age = playlen / 100; |
package main | |
import ( | |
"bufio" | |
"encoding/json" | |
"fmt" | |
"io" | |
"io/ioutil" | |
"log" | |
"os" |
diff --git a/autoload/twitvim.vim b/autoload/twitvim.vim | |
index 90b4a85..096d0eb 100644 | |
--- a/autoload/twitvim.vim | |
+++ b/autoload/twitvim.vim | |
@@ -2479,7 +2479,7 @@ function! s:launch_browser(url) | |
" an existing browser window. | |
" Firefox appears to output to stderr as well, so the '2&>1' redirect is | |
" needed. | |
- let endcmd = has('unix') ? '> /dev/null 2&>1 &' : '' | |
+ let endcmd = '' |
diff --git a/source/Makefile b/source/Makefile | |
index 222d35e..692a469 100644 | |
--- a/source/Makefile | |
+++ b/source/Makefile | |
@@ -155,6 +155,10 @@ tournament: | |
$(MAKE) CFLAGS='$(CFLAGS) -DNDEBUG -DUSE_MAKEFILE -D$(YANEURAOU_EDITION) -DUSE_AVX2 -mbmi2 -mavx2 -DFOR_TOURNAMENT -march=corei7-avx' LDFLAGS='$(LDFLAGS) $(LTOFLAGS)' $(TARGET) | |
tournament-sse42: | |
$(MAKE) CFLAGS='$(CFLAGS) -DNDEBUG -DUSE_MAKEFILE -D$(YANEURAOU_EDITION) -DUSE_SSE42 -msse4.2 -DFOR_TOURNAMENT -march=corei7' LDFLAGS='$(LDFLAGS) $(LTOFLAGS)' $(TARGET) | |
+tournament-simple-neon: | |
+ $(MAKE) CFLAGS='$(CFLAGS) -DNDEBUG -DUSE_MAKEFILE -D$(YANEURAOU_EDITION) -DNO_SSE -mfloat-abi=hard -mfpu=neon -DFOR_TOURNAMENT -march=armv7-a -mtune=cortex-a8 -ffast-math -mabi=aapcs-linux -fforce-addr -fomit-frame-pointer' LDFLAGS='$(LDFLAGS) $(LTOFLAGS)' $(TARGET) |
diff --git a/source/extra/test_cmd.cpp b/source/extra/test_cmd.cpp | |
index 452493c..d3991aa 100644 | |
--- a/source/extra/test_cmd.cpp | |
+++ b/source/extra/test_cmd.cpp | |
@@ -1572,6 +1572,159 @@ void eval_merge(istringstream& is) | |
cout << "..done" << endl; | |
} | |
+void eval_merge2(istringstream& is) | |
+{ |