タグ

2020年12月7日のブックマーク (8件)

  • メモリアクセスのセマンティクスとApple siliconの裏技(?)について - yamasaのネタ帳

    アウト・オブ・オーダー実行について補足 前回の記事で「アウト・オブ・オーダー実行」について特に説明せずに話を進めてしまったことに気づいたので、まずはそれについて簡単に補足しておこう。 コンピューターの性能向上の歴史はレイテンシーとの戦いの歴史でもある。 colin-scott.github.io 上のサイトは年代毎にコンピューターシステムでの各種レイテンシーがどのように変化していったかを紹介している。1990年代前半はキャッシュメモリとメインメモリとの間のレイテンシー差はそれほど大きくなかったが、その後の技術革新によって現在はL1キャッシュとメインメモリとの間に100倍くらいのレイテンシー差があるようになってしまった。これはつまり、プログラム実行中にメインメモリへのアクセスが発生してしまうと、それだけ長いレイテンシーの間CPUの処理を進めることができなくなってしまうことを意味する。そのため

    メモリアクセスのセマンティクスとApple siliconの裏技(?)について - yamasaのネタ帳
  • 「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳

    Apple M1についての面白い記事を見かけて、久しぶりにメモリモデル屋(?)の血が騒いだのでブログを書く。 note.com 強いメモリモデル 現代のCPUアーキテクチャでは、x86(64bit, 32bitどちらも)が「強いメモリモデル」を採用しており、それ以外のメジャーなCPUが「弱いメモリモデル」を採用している。この「強いメモリモデル」「弱いメモリモデル」について、まずおさらいしておこう。 以下のように、2つの変数a, bに対して異なるCPUコアが同時にアクセスしたとする。 int a = 0; int b = 0; CPU1: a = 1; b = 1; CPU2: int r1 = b; int r2 = a; (上記はC言語に似た疑似コードを用いているが、実際は機械語命令になっていると考えてほしい。つまり、CPU1は変数a, bの示すメモリアドレスに対するストア命令を実行して

    「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳
  • MagicOnionから始めるリアルタイム通信 (前編) - Qiita

    また、インフラ面でも課題があり、 既存のAPIサーバーは、オンプレミス での運用に対して、 現在開発中のリアルタイム通信サーバーは、クラウド (AWS) での運用が前提になっています。 そのため、運用中のユーザーデータなどへのアクセスに制限があり、 リアルタイム通信サーバー (クラウド) と APIサーバー (オンプレミス) で通信することも可能ですが、 APIサーバーの負荷等も考慮すると、頻繁なアクセスはできないため、 基的に運用中のユーザーデータへのアクセスはできない前提とします。 技術的にいろいろハイブリッドな構成となっていますし、 いろいろな事情も絡んで、リアルタイム通信サーバー で実現できることも限られていますが、 そのあたりも含めて、全体像をご紹介したいと思います。 使用している技術 (2020年12月時点) サーバーサイド .NET 5.0 (C# 9.0) MagicOn

    MagicOnionから始めるリアルタイム通信 (前編) - Qiita
  • アニメ調3Dキャラクターの作り方(テクスチャ編)|MuRo|pixivFANBOX

    この解説は、造形を作る(モデリング)からの話ではなく、色塗り(テクスチャ)を使ってアニメ調にする話です。 テクスチャの作り方でアニメ的な雰囲気に見せる方法を解説していきます。 1. テクスチャをベタ塗りにする まず、テクスチャをベタ塗りにします。元のテクスチャから色を選択してグラデーションがないテクス...

    アニメ調3Dキャラクターの作り方(テクスチャ編)|MuRo|pixivFANBOX
  • sql.js - SQLiteをWASM化したWebデータベース MOONGIFT

    HTML5ではIndexedDBというデータベースAPIが実装されています。しかし、若干利用法が独特な分、なかなか使いこなすのが難しいようです。昔ながらのRDBMSであったり、廃止になってしまったWebSQLデータベースの方が使いやすかったかも知れません。 今回紹介するsql.jsはSQLiteEmscriptenを使ってJavaScriptで使えるようにしたライブラリになります。 sql.jsの使い方 デモです。SQLを実行できます。 結果も取得できます。 任意のSQLiteファイルを読み込めます。 sql.jsはSQLiteWebAssemblyにし、実行できるようになっています。仮想ファイルシステムを使っており、インメモリで動作しています。そのため、Webブラウザをリロードしてしまうと消えてしまうのが難点です。その点さえ目をつぶれば、Webブラウザ上で自由にSQLを実行できる環境

    sql.js - SQLiteをWASM化したWebデータベース MOONGIFT
  • Unityへの組み込み言語として、Miniscriptの紹介。 – MachiaWorks

    0.はじめに Unity#3アドベントカレンダー・6日目の記事です。 はじめまして、MachiaWorksと申します。 仕事の傍ら、趣味ゲーム・曲・グラフィック・シンセサイザーの製作等 とりあえず興味のあるものに対して色々と手を出しています。 今回は、Unityへスクリプトを組み込む際の選択肢として、 「Miniscript」という言語を紹介します。 1. Unityにスクリプトを組み込むシチュエーション・メリット 実際に導入するシチュエーションの提示 Unityでスクリプトを導入したいというケースは割とあると思うんですよね。 例えば、バランス調整を行うのにスクリプトを使わない形だと、 Editor上のScriptableObjectを弄ったり C#のコードを書き直したりする形になるかと思います。 (こっちが一般的かと) Editor弄ってるとアプリ自体が落ちたら入力しなおしなのと、 S

  • UE4 Python を VSCode でリモートデバッグする - ほげたつブログ

    UE4 の Control Rig をポチポチ触ってると Python でツール化したい作業が増えてきますが、少しでも複雑な事をやろうとすると Python スクリプト実行時にデバッガが欲しくなるため、VSCode でリモートデバッグする方法について書いておきます。 はじめに ptvsd をダウンロード UE4 Python を有効化 デバッガにアタッチするスクリプトを作成 VSCode でリモートデバッグ設定を作成 リモートデバッグに接続する おわりに (おまけ)PyCharm でリモートデバッグ はじめに VSCode でリモートデバッグしたい場合は ptvsd を使用します。筆者は Python 編集環境として主に VSCode を使っているので Maya プラグイン作成時等でも ptvsd を使っています。 検証環境は Windows10 64bit / UE4.26.0 です。

    UE4 Python を VSCode でリモートデバッグする - ほげたつブログ
  • ジョブ型雇用と日本社会(下) 専門性とスキルの尊重を 本田由紀・東京大学教授 - 日本経済新聞

    「ジョブ型雇用」という言葉を頻繁に目にするようになり、早くから提唱していた者の一人である筆者としては隔世の感がある。その契機となったのは日経済団体連合会がジョブ型雇用の方針を打ち出したことにある。2018年11月の提言「Society5.0―ともに創造する未来―」から、20年3月の採用と大学教育の未来に関する産学協議会・報告書「Society5.0に向けた大学教育と採用に関する考え方」に至る

    ジョブ型雇用と日本社会(下) 専門性とスキルの尊重を 本田由紀・東京大学教授 - 日本経済新聞