1. トップ
  2. コラム一覧
  3. 非エンジニアでも知らないとヤバイCPU Part2

非エンジニアでも知らないとヤバイCPU Part2

投稿日 : 2018.02.18  |  カテゴリー : 非エンジニアでも知らないとヤバイ

画像

コア、クロック周波数

前回の非エンジニアでも知らないとヤバイCPU Part1
では、CPUの処理性能がわかるクロック周波数と、CPUの中心をになっているコアについて触れました。
今回は、処理を効率よく進めるためのキャッシュメモリとスレッドについて触れていきます。

処理全体のバランスをとるキャッシュメモリ

以前、CPUの処理速度がかなりのスピードで高速化していた。
しかし、データを記憶する記憶装置であるメモリの性能は大きく向上しなかった。
なので、両者の性能が大きく開いてしまった。
これによってどのような問題が起きるかというと、CPUが高速で処理をし、メモリからデータを要求した際に、メモリの反応が遅いので、CPUは処理を終えているが次の処理を行うことが出来ず、全体の処理速度が著しく下がってしまう。
この現象をメモリ遅延という。

この問題を緩和したのが、キャッシュメモリである。
CPUとメモリの間に高速なキャッシュメモリを設けて、速度差を緩衝している。
キャッシュメモリには、超高速の記憶素子であるSRAMを使用し、メインメモリには低速で安価なDRAMを使用する。
しかし、キャッシュ(1次)を設けても、CPUとメモリの差が大きすぎるので、なかなか処理速度の差が縮まらない。
そこで、1次キャッシュだけでなく、2次・3次キャッシュを設けることで、全体の速度バランスをとっている。
一般的にCPUから遠ざかるにつれて、キャッシュの速度を遅くなり、容量は大きくなる。

マルチタスク能力を上がるスレッド

スレッドとはCPUが同時に担当できる仕事の数。
1スレッドの場合、1つの仕事しかできないが、2、3スレッドを増えるにつれて同時にこなせる仕事が増える。
正確に言えば、同時に処理ができないわけではないが、1スレッドの場合に2つの仕事が来たときに余っているスペースで処理することはできるが、効率よく処理をこなすことができない。

スレッドが増えてもコア数が増えるわけではないので格段に処理能力が上がるわけではないが、複数の仕事を効率よく処理できるので、処理がスムーズになることを体感でき、マルチタスク能力が上がる。

まとめ

キャッシュメモリやスレッドなどの機能を駆使して、現在のコンピュータの処理速度は向上している。
次回もCPUの性能について触れていきます。

この記事を共有する
  • facebookでシェアする
  • ツイッターでつぶやく
  • LINEで送る
関連記事

非エンジニアでも知らないとヤバイGit Part1

そもそもGitとは Gitは分散型のバージョン管理システム。 分散型とは、リポジトリと言われる開発過程が保存されているデータベースが自分やチームのマシン(パソコン)に入っているタイプ。 バージョン管理システムは、コードなどの開発過 ...

非エンジニアでも知らないとヤバイGit Part3

はじめに 今回は競合の解決について説明する。 前回までの記事はこちら 非エンジニアでも知らないとヤバイGit Part1 非エンジニアでも知らないとヤバイGit Part2 競合の発生 リモートリポジトリとローカルリポジトリ ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part2 〜SELECT文でデータ抽出〜

DB、SQLについて 前回の非エンジニアでも知らないとヤバイSQL Part1では、DBの種類(「関係型」「NoSQL」「階層型」「ネットワーク型」)、その中でも現在主流になっている「ネットワーク型」(RDBMS)について、SQLについて ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part4 〜INSERT句でデータを追加〜

非エンジニアでも知らないとヤバイSQL Part4 〜INSERT句でデータを追加〜 前回はWHEREでテーブルから指定した条件のデータを抽出する方法を学びましたね。 今回はテーブルにデータを追加して拡張してくれるINSERT文について ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part5 〜UPDATEとDELETEでデータを編集〜

span{font-size:15px;} 非エンジニアでも知らないとヤバイSQL Part5 ~UPDATEとDELETEでデータを編集~ 前回はテーブルにデータを追加するためのINSERT文について学びました。 ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part6 〜似て非なるTRUNCATEとDROP〜

span{font-size:15px;} 非エンジニアでも知らないとヤバイSQL Part6 〜似て非なるTRUNCATEとDROP〜 前回はテーブルのデータの更新と削除を行うための「UPDATE」と「DELETE ...

非エンジニアでも知らないとヤバイCPU Part1

そもそもCPUとは CPUとは、Central Processing Unitの略で、日本語では中央演算処理装置と言い、別名はプロッセッサーです。 入力装置などから受けっとった値を処理し、出力装置などで結果を出力します。 CPUの内部 ...

非エンジニアでも知らないとヤバイSQL

非エンジニアでも知らないとヤバイSQL Part3 〜WHERE句で検索条件を指定〜

SELECT文について 前回は、SQLにてSELECTする際、全カラム抽出、カラム指定抽出、件数指定抽出、OFFSETを使った件数指定抽出についてでした。 DBの種類(「関係型」「NoSQL」「階層型」「ネットワーク型」)、その中でも現 ...

非エンジニアでも知らないとヤバイPHP Part1

プログラミング経験有無に関わらず知識は必要 タイトルに記載していますように非エンジニアの方(業界問わず)でもプログラミングに関する知識は必要です。昨今世界中においてあらゆる分野において情報化が進んでいます。これは日本も例外ではありません。 ...

非エンジニアでも知らないとヤバイGit Part2

はじめに 前回は、Gitの基本的な機能、リモートリポジトリ・ローカルリポジトリ、コミットについて説明した。 今回は、 Gitの機能の1つであるクローン、Push、Pullについて説明する。 クローンとは 共同で開発を進める際に作 ...

Knocknote Education(ノックノートエドゥケーション)