Skip to content

Instantly share code, notes, and snippets.

@rszeto
rszeto / .xbindkeysrc
Created September 30, 2017 21:33
Mouse bindings for Logitech M705 on Ubuntu
# Scroll left --> Ctrl+Shift+Tab
"xte 'keydown Control_L' 'keydown Shift_L' 'key Tab' 'keyup Shift_L' 'keyup Control_L'"
b:6
# Scroll right --> Ctrl+Tab
"xte 'keydown Control_L' 'key Tab' 'keyup Control_L'"
b:7
# Bottom side button --> Alt+Tab
"xte 'keydown Alt_L' 'key Tab' 'usleep 100000' 'keyup Alt_L'"
import numpy as np
import matplotlib.pyplot as plt
def motion(event):
x = event.xdata
y = event.ydata
if (x is None) or (y is None):
return
ln.set_data(x,y)
print('(x,y) = (%.2f,%.2f)' % (x,y))
@raryo
raryo / naive_julia.jl
Created March 21, 2020 13:29
MF(Matrix Factorization;行列分解)の練習。
using LinearAlgebra
function main()
# input data
train_data = read_data("./ml-100k/u.data")
n_user = length(unique([t[1] for t in train_data]))
n_item = length(unique([t[2] for t in train_data]))
# parameters
P, Q = fit(n_user, n_item, train_data)
using LinearAlgebra
function main()
# input data
train_data = read_data("./ml-100k/u.data")
n_user = length(unique([t[1] for t in train_data]))
n_item = length(unique([t[2] for t in train_data]))
# parameters
P, Q = fit(n_user, n_item, train_data)
@kaityo256
kaityo256 / fandcandcompiler.md
Last active October 4, 2020 04:48
FortranとC++とコンパイラと

FortranとC++とコンパイラと

はじめに

将来どうなるかはわからないのだが、とりあえず2018年現在、まだスパコンを使って数値計算をしようとしたらFortranかC++を使わなければならない。で、一般論としてコンパイラはFortranの方が最適化しやすく、似たようなコードをFortranとC++で書いたら、Fortranの方が早くなる、ということはまま起きる。それじゃ全部Fortranでかけばよいのか?というと、世の中そんなに単純では無い気がするよ、という感じのポエムです。

なお、以下に出てくる数値計算結果は筆者の(だいぶ昔の)経験を脚色したもので、実際に存在するアーキテクチャやコンパイラとは全く関係ありませんのであしからず。

C++で書いてみる

@xxKeefer
xxKeefer / starship.toml
Last active January 5, 2021 16:04 — forked from ryo-ARAKI/starship.toml
Starship configuration file
# ~/.config/starship.toml
[character]
error_symbol = "[💔 :](bold red) "
success_symbol = "[🖥 :](bold green)"
[cmd_duration]
min_time = 10_000 # Show command duration over 10,000 milliseconds (=10 sec)
format = " took [$duration]($style)"
@rwest
rwest / float.py
Created March 31, 2011 20:02
A python function to convert FORTRAN formatted float strings into floats
import re
re_f_float_neg = re.compile('(-?[0-9.]*)(-\d\d\d)')
def fortran_float(input_string):
"""
Return a float of the input string, just like `float(input_string)`,
but allowing for Fortran's string formatting to screw it up when
you have very small numbers (like 0.31674-103 instead of 0.31674E-103 )
"""
try:
fl = float(input_string)
@Yarakashi-Kikohshi
Yarakashi-Kikohshi / latex-physics.md
Created February 9, 2021 07:36
physics パッケージを自分好みに

physics パッケージを自分好みに

physics パッケージは物理で用いられる数学記号等を簡便に利用できるようにxparse パッケージを利用してコマンドを作成している.また,amsmath パッケージにも依存している.

physics.sty | CTAN

目的

@kaityo256
kaityo256 / スパコンと円周率の話.md
Last active April 2, 2023 07:01
スパコンと円周率の話

スパコンと円周率の話

はじめに

2019年3月14日、Googleが円周率を31兆桁計算したと発表しました。このニュースを聞いて僕は「GoogleがノードまたぎFFTをやったのか!」と大変驚き、「円周率の計算には高度な技術が必要」みたいなことをつぶやきました。しかしその後、実際にはシングルノードで動作する円周率計算プログラム「y-cruncher」を無改造で使っていることを知り、「高度な技術が必要だとつぶやいたが、それは撤回」とつぶやきました。円周率の計算そのもののプログラムを開発していなかったとは言え、これだけマッシブにディスクアクセスのある計算を長時間安定実行するのは難しく、その意味においてこの挑戦は非自明なものだったのですが、まるでその運用技術のことまで否定したかのような書き方になってしまい、さらにそれが実際に計算を実行された方の目にもとまったようで、大変申し訳なく思っています。

このエントリでは、なぜ僕が「GoogleがノードまたぎFFT!?」と驚いたか、そんな話を書いてみたいと思います。

円周率の計算とスパコン

@AAber
AAber / disk_used_alert2slack
Created June 14, 2017 13:38
Script to monitor disk space and alert via slack when disk usage is > 80% Place the script in /etc/cron.hourly
#!/bin/bash
# Parse df selected output
df -h|egrep -v 'File|tmpfs|docker|udev'| \
while read LINE; do
USED_NUMBER=`echo $LINE |awk '{print $5}'|sed 's/\%//'|sed 's/ //g'`
USED_PERCENT=`echo $LINE |awk '{print $5}'|sed 's/ //g'`
MOUNT_POINT=`echo $LINE |awk '{print $6}'|sed 's/ //g'`
if [ $USED_NUMBER -gt 80 ]; then
# Create message without spaces