1

私は、研究開発と完全な出荷コードを大規模に組み合わせたグループで働いています。

半分の時間、私はリアルタイムシステムで実行されるプロセスを開発しています(ソフトリアルタイムとハードリアルタイム、ミディアムリアルタイムの間のどこか?)

残りの半分は、必ずしもコードをまったく気にしない研究者のためにプロセスを作成または最適化します。

現在、2つの異なるブランチに分岐する必要があるプロセスに取り組んでいます。

1つのグループ用の調査バージョンと、最新かつ最高の製品を作成するために調査コードと時々マージする必要がある製品バージョンがあります。

これらのプロセスをテストするには、分析したデータを正しい時間にプロセスに送信する、やや複雑なテスト環境をセットアップする必要があります(リアルタイムシステム)。

私はどのように私が作ることができるかについて考えていました:

  1. アイディア
  2. 埋め込む
  3. テスト
  4. GOTO#1

私の同僚のために、可能な限り簡単、迅速、そして痛みのないサイクリングをしてください。

私が持っていたアイデアの1つは、これらの長時間実行されるプロセス内にスクリプト言語を埋め込むことでした。したがって、プロセスの実行時に、実際のアルゴリズムとそのパラメーターを微調整することができます。

すぐに私は埋め込みを見ました:

これらは両方とも実行可能であるように見え、実際に与えられた問題を完全に解決するかもしれません。

他に素晴らしいアイデアはありますか?

1〜2行の変更後に再コンパイルし、テスト環境に再デプロイして再起動するのは面倒です。

システムはかなり複雑で、うまくいけば私はそれを半分きちんと説明しました。

4

4 に答える 4

2

完全な再コンパイルを行わなくても、スクリプトを使用して十分なプログラムを変更できる場合は、システムを小さな部分に分割することを検討する必要があります。データの読み込みなどを処理する「サーバー」と、実際の処理を行うクライアント コードを使用できます。システムが新しいデータをロードするたびに、クライアント コードが再コンパイルされているかどうかを確認して確認し、再コンパイルされている場合はそれを使用できます。

これにはいくつかの利点があると思いますが、その最大の利点は、システム全体の複雑さが大幅に軽減されることです。今では、2 つの言語ではなく 1 つの言語で作業しています。頭の中で python または lua モードから c++ モードに移行するときに、人々が物事を台無しにする可能性はほとんどありません。システムに他の言語を埋め込むと、それに依存するリスクも生じます。プログラムを微調整するために python や lua を使用する場合、それらの言語はデプロイ時に依存関係になるか、C++ に戻す必要があります。何かを C++ に移植することを選択した場合、切り替え中にバグが発生する可能性がもう 1 つあります。

于 2009-05-18T02:31:00.230 に答える
0

あなたのシステムを理解しているかどうかはわかりませんが、ビルドと展開が複雑すぎる場合は、自動化できますか? 展開が完全に自動化されている場合、問題は解決しますか?

スクリプト言語がどのように問題を解決するのか理解できませんか? アルゴリズムを変えたら計算を最初からやり直さなきゃいけないじゃないですか。

于 2009-05-17T23:20:02.797 に答える