Article information
RevisionsShow article in Markdown
Help us understand the problem. What are the problem?

This post is Private. Only a writer or those who know its URL can access this post.

posted at

事後コンパイラについて

はじめに

最近事後コンパイラについて調べたので、事前コンパイラ・実行時コンパイラと併せてメリットデメリットをまとめてみました

事前コンパイラ

AOTコンパイラとも呼ばれる。

コードを事前に機械語などにコンパイルして、それを実行する。単にコンパイラというときは大抵これのこと

メリット

  • 実行時のコストが低い
  • コンパイルに時間をかけれるのでより最適化できる場合がある

デメリット

  • 実際に実行する環境がわからないので、環境依存の処理などが難しい

実行時コンパイラ

JITコンパイラとも呼ばれる。

コードを中間言語にコンパイルしておいて、実行時に機械語などに翻訳・実行する。

メリット

  • 実行環境などが分かるので、より最適化できる場合がある
  • 様々な環境に対応することが容易

デメリット

  • コンパイルのコストが実行時にかかる

事後コンパイラ

BOTコンパイラとも呼ばれる。
インタプリタなどで実行し、実行が終了した後に機械語などにコンパイルする。

メリット

  • 入出力や実行プロセスがわかるので、より最適化できる場合がある
  • 実行時のコストが低い
  • コンパイルに時間をかけれるのでより最適化できる場合がある

デメリット

  • 結局インタプリタなどで実行するため意味はない

おわりに

事後コンパイラなんて無いです

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
Article information
RevisionsShow article in Markdown
Help us understand the problem. What are the problem?