パソコン新しくしたわ
用途はプログラミングとゲーム
ゲームはFHD画質で遊ぶ予定
あとは画像生成AI
パーツ一覧
| 部品 | 名前 | 金額 |
|---|---|---|
| CPU | Ryzen 5 9600X | 54,800 |
| CPUクーラー | DeepCool AK400 | 3,003 |
| マザボ | ASUS TUF GAMING B650M-PLUS | 20,057 |
| グラボ | ASUS DUAL-RTX4070S-O12G-EVO | 94,800 |
| メモリ | CFD W5U5600CS-16G 2枚組 | 11,830 |
| 電源 | 玄人志向 KRPW-GA850W | 10,717 |
| SSD | WD Black SN770 2TB | 23,400 |
| ケース | 余ってたやつ | |
| OS | 余ってたやつ |
合計 218,607
CPU
新型だから長く使えると期待して購入
ワットパフォーマンスに優れたZen5世代のCPU
強みは、Zen4世代と比較した場合のシングルスレッド性能の高さ
ゲーム用途だと6コアもあれば十分なので9700Xは見送り
でも同じ位の値段なら7800X3D買ったほうがゲーミングパフォーマンス良い
値段を抑えるなら7600Xで十分
たけーよ
完全に趣味
半年後に価格落ちてるんだろうな
CPUクーラー
CPUの発熱は40Wくらいでしょ、安いCPUクーラーで十分
Zen4やZen5は、CPUアチアチを前提に作られているからなんか動いてりゃいいのでは
マザボ
筐体が小さいのが好きなのでMicroATXサイズを採用
チップセットはB650を採用
X870、B650EはPCIe5が付いてるけど、当面の間その性能が発揮されることはないと見込んで採用見送り
マザボ自体はVRMフェーズ数 12 + 2で大体のCPUは動作するはず
ただしCPUがあんま消費電力使わないのでオーバースペック
次世代、次々世代も使い回せることを期待
グラボ
NVIDIAのSUPER表記を信じた
4070ti suoer以上は分厚すぎて、MicroATXマザボで組めなさそうなので見送り
4090とか分厚すぎて人間が扱うレベルじゃねえ
FHDなら4070SUPERで十分以上でしょ
メモリ
AMDの9000シリーズはメモリの最大定格クロックが5600らしい
AMAZONで安かったので購入
動けばいいでしょ
安いのがなかった場合は、crucialのメモリを買おうとしていた
電源
AMAZONで安かったので購入
600Wのやつとか余ってるけど古くなってきたし買い替え
SSD
ベーシックな感じのやつを購入
以前はサムスン製一択だったけど、どこのメーカーも性能同じくらいになってきたので、乗り換えます
というか性能同じくらいなのにサムスン製のが高い
PCIe Gen5のSSDで低発熱のが発売されたらそっちに切り替えたい
プログラミング関連、意外と容量使うから2TBがいいんだ
組み立て
組み立てました
動きません😇
マザボのDRAMランプが光りっぱなしなんだわ
エラー表記ではメモリが悪いということ
メモリ差し直しやスロット変更して一枚のみで動作といろいろパターン変えて動作させても状況変わらず
CMOSクリア、BIOS更新をしても状況変わらず
マザボの公式サイト見に行ったけど9600XはBIOSどのバージョンでも動くって言ってる
電源を変更しても当然状況変わらず
マザボとメモリの相性問題かと思い crucial DDR5-6000(17,700円)を追加購入
メモリ変更で動くかと思いきや、相変わらずDRAMランプ光りっぱなし😇
マザボかCPUの初期不良かと思って持ち運びしやすいCPUだけ購入店に持っていって見てもらったところ、CPUはこわれていないことが判明
じゃあマザボ買い替えかなと思ったが最後ヤケクソになってCPUセットし直して、メモリ4スロ64GB差して、電源を別の600W電源にして電源つけて10分くらい放置すると一瞬だけBIOSっぽいのが表示されるように
マザボのランプがチカチカしてたけど、更にしばらく放置していると無事BIOS起動
なんだったんだよ一体、メモリ読み込みに時間がかかっていただけなのだろうか
結局電源は、850W電源、メモリは16GB×2で運用してる
他のマザボ買おうと思ってたけど買わずにすんで良かったあ
なぜ俺のASP.Net CoreアプリはIISで動かないのか
Q なぜ俺のASP.Net CoreアプリはIISで動かないのか
A モジュールが足りないから
じゃけんモジュール入れましょうね。
どのモジュールを入れたらいいかは公式に書いてある。
以下のサイトからWindows Hosting Bundle Installerをダウンロードしてサーバにインストールすればすぐ終わる。簡単。インストールしたらIIS自身を再起動してモジュール機能のページにAsp.Net Coreが増えてればOK。
ではなぜ動かなくなるかというとWindows Hosting Bundle Installerを使わずに各ランタイムを個別に入れようとしてミスるから。
ホスティング システムに .NET Core ホスティング バンドルをインストールします。 このバンドルをインストールすることで、.NET Core ランタイム、.NET Core ライブラリ、ASP.NET Core モジュールがインストールされます。 このモジュールでは、ASP.NET Core アプリが IIS の背後で実行できるようになります。
検索方法によっては以下のサイトのようなランタイムを個別にインストールするサイトが出てきてモジュールのインストール忘れが発生する。
ODP.Net CoreでTNS_ADMINを指定する
環境
.Net Core 3.1
Oracle.ManagedDataAccess.Core 2.19.70
.Net Frameworkではapp.configでTNS_ADMINを設定することで接続文字列のDataSourceにtnsnames.oraで設定したデータソース名を用いることができた。.Net Core版ではこれができなくなっている。
代替手段として用意されているのは.NET構成APIを用いる方法だ。OracleConnectionを生成する前にOracleConfiguration.TnsAdminにtnsnames.oraが配置されているフォルダを指定すればよい。
TnsAdminに設定する値は自力でappSettings.jsonから引っ張ってきてどうぞ。
OracleConfiguration.TnsAdmin = "C:\app\NetWork\Admin"; // tnsnames.oraが配置されているフォルダ
orclCon = new OracleConnection("user id=hr; password=<password>; data source=orclpdb");
orclCon.Open();
詳細は公式サイトに書かれている。
またtnsnames.oraは以下の優先順位で検索されるらしい。
1. OracleConfiguration.TnsAdminプロパティで設定されたディレクトリ
2. 実行中ODP.NET Coreアセンブリのディレクトリ
3. 現行作業ディレクトリ
.Net Coreのlog4netでロガー名を指定してロガーを生成するには
環境
.Net Core 3.1
log4net 2.0.8
.Net Core対応でlog4netをnugetから入れたときに気がつくのはロガー名だけを指定してロガーを生成するメソッドが無いということだ。.Net Framework版だとロガー名指定でロガーを生成できてたのでどうやっていいかを調べた。
.Net Core版では以下のように書くことでロガー名でロガーを生成できる。ここではMyLoggerというロガー名を指定している。
現場からは以上です。
ILog logger = LogManager .GetLogger(Assembly.GetExecutingAssembly(), "MyLogger");
.NET Core 汎用ホストの環境変数の接頭辞はなにか
Asp.Net CoreでIISに30MB以上のファイルをアップロードする
30MBと言ったが正確には30000000バイトだ。
環境
.Net Core 3.1
手順
まずweb.configにrequestLimitsを追加する。maxAllowedContentLengthに指定した数が最大アップロード容量だ。
Asp.Net Coreのテンプレートにはweb.configが初期は存在しないから無いなら自分で作ってどうぞ。locationタグが漏れないよう注意。
Web.configじゃなくてIISの最大アップロードサイズ変更でいいかもしれんが試してないので知らん。
web.config
<?xml version="1.0" encoding="utf-8"?> <configuration> <location path="." inheritInChildApplications="false"> <system.webServer> <security> <requestFiltering> <!-- Handle requests up to 1 GB --> <requestLimits maxAllowedContentLength="1073741824" /> </requestFiltering> </security> </system.webServer> </location> </configuration>
次にStartup.csでコンフィグ設定している箇所にIISServerOptionsとFormOptionsの処理を追加する。
・Startup.csから抜粋
public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.Configure<IISServerOptions>(options => { options.MaxRequestBodySize = 1073741824; // 1GB }); services.Configure<FormOptions>(x => { x.ValueLengthLimit = 1073741824; // 1GB x.MultipartBodyLengthLimit = 1073741824; // 1GB }); }
これでファイルアップロードの上限が増えてるはず。
終わりに
・参考サイト github.com
Asp.Net Coreのファイルアップロード方法は以下のサイト見ればだいたい分かる。 docs.microsoft.com
・ファイルアップロードの公式サンプル github.com
1995年からの名目GDP成長率が低い日本はオワコンなのか
Twitterを見てると「1995年の名目GDPを100としたときに日本以外の国は伸びてるのに日本だけ減ってる!」という意見があった。その意見のせいで日本人は昔に比べて成長していないんだという悲観的な印象を受けた人が一定数いたようである。日本愛好家として「日本オワコン!」という意見は見過ごせないので成長率以外の数字を見ていく。
統計

https://www.google.com/publicdata
グーグルのパブリックデータ、世界開発指標から一人あたりの名目GDPを引っ張って来たのが上の図である。1995年の日本のGDPは他の国と比較して突出して高いことがわかる。「昔の日本はすごかったんだ!」と思う前にちょっと待ってほしい。まず前提条件として名目GDPというのはドルベースで算出される。そのため円高ドル安であると名目GDPは実質の経済規模より増えたように見える。そして1995年といえば1ドル79円の超円高時代、それが反映されているためグラフでは1995年の日本が突出しているのである。
このことを踏まえると「1995年の名目GDPと100としたとき~」という意見は、日本が衰退しているという主張を劇的に見せたいだけの恣意的な意見であると言わざるを得ない。名目GDPを用いて日本を主体とするデータ比較を行うなら1995年を基準とするべきでないし、1995年からの変化が知りたいだけであれば実質GDPの値を使うべきだろう。

同様に一人あたりの実質GDP(2000年基準)を引っ張ってきたのが上の図である。ご覧の通り1995年の値に比べて現在の値は至って普通に上昇している。「1995年から減ってる!」という認識は何だったのだろうか。参考までに述べると日本の1995年の値は40,368ドル、2017年の値は48556となっている。
また、他国と比較して成長率が低いということもグラフからは読み取れない。本当に成長率がオワコンになっていればとうの昔にフランスやイタリアに抜かれていないとおかしいはずである。
そもそも成長率○○位だからオワコンというのもおかしな話だ。アメリカは日本より成長率が高いがそれでも2017年度の実質GDP成長率は191カ国中127位だ(日本は138位)。成長率が低いから終わりなのであれば100位以内に入れないアメリカも終わりということになってしまう。