「原作者へ」
連絡先を存じ上げませんでしたので、不本意ながら無断で翻訳しました。
正式に翻訳を許可されたいです。
gogyzzz@gmail.comでご連絡ください。
아래 포스트의 번역입니다.
http://work-in-progress.hatenablog.com/entry/2018/09/15/121225
프로그램 내에서 사용하는 데이터의 자릿수에 관한 메모.
디폴트로 컴파일하면 「float」형이 된다.
kaldi/configure at master · kaldi-asr/kaldi · GitHub
configure 내용 중
# Default configuration
double_precision=false
(snip)
if $double_precision; then
echo "DOUBLE_PRECISION = 1" >> kaldi.mk
else
echo "DOUBLE_PRECISION = 0" >> kaldi.mk
fi
DOUBLE_PRECISION이 「0」이라면, 템플릿 부분은 float형으로 컴파일된다.
matrix/kaldi-matrix.cc
template<typename Real>
void Matrix<Real>::Read(std::istream & is, bool binary, bool add) {
Real r;
is >> r;
사용하는 머신에 double형 연산을 지원하는 회로가 있다면 double형으로 하는 쪽이 빨라질지도 모른다.
아래는 데이터의 읽기에 관한 메모.
아래와 같은 지수표기로 쓰여진 텍스트 파일이 있다면,
-6.93889018e-18 -5.55112e-17 ...
아래의 코드를 통해 읽을 수 있다.
float r;
is >> r;
댓글 없음:
댓글 쓰기