並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 27 件 / 27件

新着順 人気順

procの検索結果1 - 27 件 / 27件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

 proc27 linux  Rust      RustC++ - Fixstars Tech Blog /proc/cpuinfo  
  • RustがC++に速度で勝った話 - Fixstars Tech Blog /proc/cpuinfo

    実行毎に数十msはブレるので、元のC++実装に対しての時間で比較して見ると、最適化オプションと配列境界チェックの除去が効いているように見えます。 そして先述の通り、RustとC++で実行順を入れ替えたり何度か実行しても、最終的に必ず(わずかに)Rustの方が時間短かったので、(2019/09/20:45追記)「計測誤差ではないの?」という問い合わせを内外から多数受けたので、(先述の通り経験的に計測誤差でないことは明らかではあるんですが経験者でない人向けの)分かりやすい証拠としてC++とRustそれぞれ単体を100回ずつ計測した結果を置いておきます。分布から分かる通り、検定などするまでもなく有意にRustの方が時間が短いことが分かります。また、C++側は元のナイーブな実装のままなので、高速化の余地(例えばrestrict)は十分にあります。ここでは「手軽にやった時に」を想定しており、その条件

      RustがC++に速度で勝った話 - Fixstars Tech Blog /proc/cpuinfo
    • Diving into /proc/[pid]/mem

      A few months ago, after reading about Cloudflare doubling its intern class size, I quickly dusted off my CV and applied for an internship. Long story short: now, a couple of months later, I found myself staring into Linux kernel code and adding a pretty cool feature to gVisor, a Linux container runtime. My internship was under the Emerging Technologies and Incubation group on a project involving g

      • CUDAによる局所特徴量計算の高速化とソースコード公開 - Fixstars Tech Blog /proc/cpuinfo


           adaskitlibSGMcuda-bundle-adjustment Visual SLAMSfM(Structure from Motion)CUDAcuda-efficient-featuresGitHub fixstars/cuda-efficient-features   Visual SLAMSfM2姿
          CUDAによる局所特徴量計算の高速化とソースコード公開 - Fixstars Tech Blog /proc/cpuinfo
        • 近似最近傍探索ライブラリFaissの4bit PQアルゴリズムについて、ARM CPU上での動作を60倍程度高速化しました - Fixstars Tech Blog /proc/cpuinfo


           TL;DR: Issue, PR  Facebook AI Research(FAIR)Faiss4bit PQARM CPU(aarch64)60 稿Faiss   \( \mathit{Vs} \)  \( \boldsymbol{x} \)  \( \boldsymbol{v} \in \mathit{Vs} \) 
            近似最近傍探索ライブラリFaissの4bit PQアルゴリズムについて、ARM CPU上での動作を60倍程度高速化しました - Fixstars Tech Blog /proc/cpuinfo
          • エラーへの免疫が必要、proc-macroがうまく展開できない… キャディの実務を通して学んだRustのメリット・デメリット

            実務でRustを使ううえで苦労したこと 高橋優輔氏(以下、高橋):高橋と申します。前職はC++でずっとデスクトップアプリケーションを開発していました。この会社に来て、Rustを2年ぐらい使っているところです。良くも悪くもこの会にちょうどよいRustの理解度を持っているということで、視聴者目線のディスカッションを進行できればと思っています。よろしくお願いします。 ということで、さっそく最初のテーマにいきたいと思います。 お三方のお話をうかがっている限り、ご自身で手を動かしながらゴリゴリRustを勉強していたというのはあると思っています。ただ、実際にキャディに入って、システムの開発の主要言語としてRustを使うという業務経験は、たぶん初めてなんだろうと思っています。 そこには自分で勉強した時と別の苦労があるのではないかなと思っているので、そのへんの話をちょっとうかがいたいと思っています。まず冨

              エラーへの免疫が必要、proc-macroがうまく展開できない… キャディの実務を通して学んだRustのメリット・デメリット
            • RISC-Vベクトル拡張について解説する - Fixstars Tech Blog /proc/cpuinfo

              メモリからの読み書き ベクトルレジスタに何かしらの値を持ってくるために、メモリから読み書きする必要があります。RV32Vでは、以下3種類のメモリアクセスが可能です 通常の連続アクセス:vl/vs命令 ストライドアクセス:vls/vss命令 インデックスアクセス:vlx/vsx命令 ※vlがvector lengthのレジスタと、vector loadの読み込み命令の両方の意味が使われるので注意 これらは、機械語レベルでは1つのオペコード0000111(load)と0100111(store)が割り当てられており、フィールドの値を変えることで切り替えられます。 連続アクセス 通常の連続アクセスは簡単で、指定したアドレスからvl個の要素をLMUL個のレジスタを使って読み込みます vlb.v vd, (rs1), vm # rs1のアドレスから、vdへ、b(08bit)を、連続で、読み込む vl

                RISC-Vベクトル拡張について解説する - Fixstars Tech Blog /proc/cpuinfo
              • Unikernelについての現状調査 - Fixstars Tech Blog /proc/cpuinfo


                202021 Unikernel? UnikernelOS Unikernel20202Unikernel調 Unikernel Unikernel2013 Unikernels: Library Operating Systems for th
                  Unikernelについての現状調査 - Fixstars Tech Blog /proc/cpuinfo
                • Rust の procedural macro を操って黒魔術師になろう〜proc-macro-workshop の紹介

                  この記事は Rust 3 Advent Calendar 2020 12日目の記事です。 11日目は -> rust-lang/rustへのcode contributionをはじめからていねいに 13日目は -> rust-lang/rustにコントリビュートした話 対象読者 Rust にある程度慣れている proc macro を自分で作ってみたいが、作り方が分からない procedural macro (手続きマクロ) とは こんにちは、@magurotuna です。 Rust には大きく分けて2種類のマクロがあります。 Declarative macro (宣言マクロ) Procedural macro (手続きマクロ) proc macro とも呼ばれます 宣言マクロは比較的馴染み深いもので、自分で書く機会も少なくないと思います。macro_rules! を使って作るマクロです。

                    Rust の procedural macro を操って黒魔術師になろう〜proc-macro-workshop の紹介
                  • Modern C++でのループ展開の書き方 - Fixstars Tech Blog /proc/cpuinfo


                     C++ Advent Calendar 20229   TL;DR: NC++使 template<std::size_t... unrollIndices> void vectoradd(double z[], const double x[], const double y[], const std::size_t n, std::ind
                      Modern C++でのループ展開の書き方 - Fixstars Tech Blog /proc/cpuinfo
                    • R. Shioya on Twitter: "Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw"

                      Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw

                        R. Shioya on Twitter: "Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw"
                      • Proc macro support in rust-analyzer for nightly rustc versions

                        Proc macro support in rust-analyzer for nightly rustc versions Contents A tale of one and a half compilers Two kinds of macros Proc macros in rustc Proc macros in rust-analyzer The proc macro bridge interface The long-term support plan So, are we good? What's next? Thanks Bye for now I don't mean to complain. Doing software engineering for a living is a situation of extreme privilege. But there's

                          Proc macro support in rust-analyzer for nightly rustc versions
                        • /proc/PID/fd の socket の接続先を調べる方法

                          Linux で何か調査をしていて、lsof が使えない場合に /proc/{PID}/fd 配下でそのプロセスが開いているファイルやソケットを確認したりしますが、ソケットの場合、通信相手が分かりませんでした。私は。でも知ってしまったのですその方法を。(数ヶ月前に) ということで次回以降のためにメモです。 # ls -l /proc/5322/fd total 0 lr-x------. 1 root root 64 Oct 17 15:23 0 -> /dev/null lrwx------. 1 root root 64 Oct 17 15:23 1 -> /dev/null lrwx------. 1 root root 64 Oct 17 15:23 2 -> /dev/null lrwx------. 1 root root 64 Oct 17 15:23 3 -> socket:

                            /proc/PID/fd の socket の接続先を調べる方法
                          • Alveo U50で10G Ethernetを試してみる - Fixstars Tech Blog /proc/cpuinfo

                            XGMIIの制御信号 XGMIIではEthernetのフレームをSTARTからTERMINATEで囲まれた区間で表します。 また、START は必ずD[7:0]、つまり0番目のオクテットに現れることが規定されています。ただし、これは32bit PCSの場合で、64bit PCSの場合は0番目及び4番目のオクテットにSTARTが現れることに注意が必要です。 STARTの出現位置 Ethernetフレーム送受信中に何かしら異常が発生した場合は、TERMINATEではなく ERROR でフレームを終了します。 正常フレームと異常フレーム 以上より、XGMII経由でEthernetフレームを受信するには、Startを検出して、TerminateかErrorが来るまで間のデータを読み出しつづければよいことがわかります。ただし、前述の通りStartの位置が0オクテット目か4オクテット目か変化するので、

                              Alveo U50で10G Ethernetを試してみる - Fixstars Tech Blog /proc/cpuinfo
                            • Linux Kernel: PSI - Pressure Stall Information /proc/pressure/io で IO 待ちを観察する - hibomaの日記

                              www.kernel.org Linux Kernel 4.20 で導入された PSI - Pressure Stall Information の /proc/pressure/io について気になることがあったので調べていました イントロダクション PSI を使うと CPU, メモリ, IO で stall した時間(割合) を計測できるってなことですが、どういった実装で「IO 待ち」なタスクを計測しているのかかが疑問で、社内で udzula さんあれこれ話を聞いていたのでした ソースを読む io_schedule_prepare() という関数を呼び出す際に current->in_iowait = 1 をセットしていて、これがポイント int io_schedule_prepare(void) { int old_iowait = current->in_iowait; curre

                                Linux Kernel: PSI - Pressure Stall Information /proc/pressure/io で IO 待ちを観察する - hibomaの日記
                              • 【Ruby】ブロック・Proc・lambda を理解する - Qiita


                                 RubyProcLambda  do~end{} do |a| p a end, { |a| p a } 3.times do |a| p a end #=> 0 1 2 3.times { |a| p a } #=> 0 1 2
                                  【Ruby】ブロック・Proc・lambda を理解する - Qiita
                                • arm64の場合/proc/cpuinfoでCPUのモデル名が取得できない件とその対策 - Diary of a Perpetual Student

                                  arm64では/proc/cpuinfoからCPUのモデル名を取得できない Linuxにはシステムの様子を知ることができる仮想ファイルがいくつかあります。そのうちの一つが/proc/cpuinfoで、その名の通りCPUの情報が以下のように閲覧できます。 $ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 63 model name : Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz stepping : 2 microcode : 0x1 cpu MHz : 2294.686 cache size : 4096 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid :

                                    arm64の場合/proc/cpuinfoでCPUのモデル名が取得できない件とその対策 - Diary of a Perpetual Student
                                  • Linux Internals: How /proc/self/mem writes to unwritable memory - offlinemark

                                      Linux Internals: How /proc/self/mem writes to unwritable memory - offlinemark
                                    • Linux Kernel: PSI - Pressure Stall Information /proc/pressure/memory で メモリのストールを観察する - hibomaの日記

                                      下記の続きエントリです hiboma.hatenadiary.jp 今回は PSI - Pressure Stall Information の /proc/pressure/memory についてのエントリ PSI を使うと CPU, メモリ, IO で stall した時間(割合) を計測できるってなことですが、どういった実装で「memory stall = メモリのストール」を起こしているタスクを計測しているのかかが疑問で調べていました PSI のドキュメント www.kernel.org 正直、ドキュメントを読んだだけでは /proc/pressure/memory がどういったタイミングで計上されるのか分かりませんでした. ソースを読む www.kernel.org ./kernel/sched/psi.c をざーっと呼んでいって psi_memstall_enter() と p

                                        Linux Kernel: PSI - Pressure Stall Information /proc/pressure/memory で メモリのストールを観察する - hibomaの日記
                                      • proc_macro_workshopでRustの手続き的マクロに入門する 前編 - CADDi Tech Blog

                                        はじめに Rust のマクロ 宣言的マクロ 手続き的マクロ proc_macro_workshop proc_macro_workshop について proc_macro_workshop の進め方 derive(Builder) マクロを作る マクロの処理の流れ マクロを開発する上での Tips dbg!マクロの使用 cargo-expand 01-parse 目標 実装方針 実装 02-create-builder 目標 実装方針 実装 空のbuilder関数をCommand構造体に実装する CommandBuilderを返すようにbuilder関数の実装を変更する 構造体名、フィールド名に応じた Builder 構造体を生成する 03-call-setters 目標 実装方針 実装 04-call-build 目標 実装方針 実装 05-method-chaining 目標 実装方針

                                          proc_macro_workshopでRustの手続き的マクロに入門する 前編 - CADDi Tech Blog
                                        • Why you should use `nproc` and not grep /proc/cpuinfo

                                            Why you should use `nproc` and not grep /proc/cpuinfo
                                          • GitHub - dtolnay/proc-macro-workshop: Learn to write Rust procedural macros  [Rust Latam conference, Montevideo Uruguay, March 2019]

                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                              GitHub - dtolnay/proc-macro-workshop: Learn to write Rust procedural macros  [Rust Latam conference, Montevideo Uruguay, March 2019]
                                            • 【SAS勉強会 -第2回-】SASのPROC FORMAT - シー・エス・エス イノベーションラボ(ブログ)


                                              1 luckystar_021008  SAS 👇 blog.css-net.co.jp 2proc format   library value value   32proc format SAS 
                                                【SAS勉強会 -第2回-】SASのPROC FORMAT - シー・エス・エス イノベーションラボ(ブログ)
                                              • Yuji TANAKA on Twitter: "日本のロック史的にも今これがいちばんダサイ表現だと思う。アジカンファンからも文句が出てる。 https://t.co/prOc714F3D"

                                                日本のロック史的にも今これがいちばんダサイ表現だと思う。アジカンファンからも文句が出てる。 https://t.co/prOc714F3D

                                                  Yuji TANAKA on Twitter: "日本のロック史的にも今これがいちばんダサイ表現だと思う。アジカンファンからも文句が出てる。 https://t.co/prOc714F3D"
                                                • 【Rails】scopeの定義とProcオブジェクト - Qiita

                                                  scopeとは よく利用する検索条件に名前をつけてひとまとめにしたもの。 railsガイドでは以下のように解説されています。 スコープを設定することで、関連オブジェクトやモデルへのメソッド呼び出しとして参照される、よく使用されるクエリを指定することができます。スコープでは、where、joins、includesなど、これまでに登場したすべてのメソッドを使用できます。どのスコープメソッドも、常にActiveRecord::Relationオブジェクトを返します。このオブジェクトに対して、別のスコープを含む他のメソッド呼び出しを行なうこともできます。 scopeの書き方

                                                    【Rails】scopeの定義とProcオブジェクト - Qiita
                                                  • Intel GPU専用言語C for Metalの解説 - Fixstars Tech Blog /proc/cpuinfo

                                                    アルバイトの西田です。 IntelのC for Metal(以前はC for Mediaという名前だったもの、略してC4MまたはCM)を、7月中はインターンとして、8月からはアルバイトとしてその使い方や性能を調べていました。 この記事はその成果をまとめたものです。 C for Metalとは 一般的なGPUプログラミング言語で、Intel GPU上でアセンブリに近いパフォーマンスを発揮する(らしいです)。プログラミングモデルはSIMDを利用しています(SIMDはシンプルなのでデータ並列プログラムを比較的簡単に書くことができる上に殆どの使用事例を満たすことができます)。HW実行ユニット(EU)のビューをユーザーに公開するため、IntelGPUの潜在的な能力を最大限に活用することができます。Intel GPUで動く画像処理技術の開発のためにインテル社内で使われていたものが、今回オープンソース化

                                                      Intel GPU専用言語C for Metalの解説 - Fixstars Tech Blog /proc/cpuinfo
                                                    • CUDAによるバンドル調整の高速化とソースコード公開 - Fixstars Tech Blog /proc/cpuinfo

                                                      はじめに こんにちは、エンジニアの高木です。 私は現在、adaskitという社内の自動運転関連のオープンソースプロジェクトに携わっており、プロジェクトのこれまでの成果としてlibSGMやsegmentation-sgm、「Visual OdometryをCUDAで高速化した話」等を紹介しました。 今回はVisual SLAM等で用いられるバンドル調整について、CUDAによる高速化に取り組んだ話を紹介します。結果だけ先に言うと、CPUで約12秒かかる規模のバンドル調整に対し、GPUで約1.2秒まで短縮することができました。 また、そのソースコードをGithubに公開しましたので、興味があれば是非覗いてみてください。 fixstars/cuda-bundle-adjustment 背景 バンドル調整(Bundle Adjustment)とは、画像からの3次元復元において3次元点群とカメラ姿勢を

                                                        CUDAによるバンドル調整の高速化とソースコード公開 - Fixstars Tech Blog /proc/cpuinfo
                                                      • [Rust] proc_macro入門 CustomDeriveを書いてみる - Qiita


                                                        davidpdrsn/juniper-eager-loading: Library for avoiding N+1 query bugs with Juniper CustomDeriveproc_macroCustomDrive  Rust 1.41 CustomDerive CustomDrive [package] name = "proc_macro_sample" version = "0.1.0" authors = ["yagince <xxxx@gmail.com>"] edition = "2018" publish = false [l
                                                          [Rust] proc_macro入門 CustomDeriveを書いてみる - Qiita
                                                        1

                                                        新着記事