[adlint-user-ja:81] Re: 多次元配列における解析エラーについて
Open source and free source code static analyzer
Brought to you by:
asamiogis
|
From: <tos...@hi...> - 2013-08-08 01:06:56
|
矢野尾様
お世話になります。西田です。
お返事ありがとうございます。
AdLintの仕様としては解析可能とのこと、拝承です。
>AdLint は、C 言語プログラム中の変数それぞれについて、データフロー解析の
>ための多くの付加情報を確保するため、どうしてもメモリを多く必要とします。
これは解析ツールの性でしょうね。
様々な情報の確保とのトレードオフですね。
今後もAdLintを活用していきたいと思っておりますので、
対応版のリリースをお待ちしております。
ご回答ありがとうございました。
---
西田
>送信者: ya...@us...
>主題: [!][adlint-user-ja:80] Re: 多次元配列における解析エラーについて
>受信日: 13/08/08 09:09
>属性: なし
>
>矢野尾です。
>
>ご報告ありがとうございます。
>
>> 仕様上の制限や、必要な設定などありましたらご教示いただけますでしょうか。
>> 宜しくお願いいたします。
>
>AdLint の仕様といたしましては、ご提示いただいたコードをそのまま解析可能
>です。したがって、本件は AdLint の不具合です。
>
>おそらく、AdLint 内部の抽象インタプリタで TestStructure 配列をそのまま確
>保しようとしてメモリを使い果たしているようです。
>
>AdLint は、C 言語プログラム中の変数それぞれについて、データフロー解析の
>ための多くの付加情報を確保するため、どうしてもメモリを多く必要とします。
>
>本質的な解決には、変数ひとつに対応する情報量を減らすことが必要ですが、ま
>ずは TestStructure のような大きな変数については、要素数に上限を設けるこ
>とで対応しようと思います。
>
>現在、次のリリースのための追加機能を実装中でして、対応まで少々お時間をく
>ださい。
>
>以上
>
>--
>矢野尾 裕 <ya...@us...>
>
>
>(2013年08月06日 17:45), tos...@hi... wrote:
>>
>> はじめまして。
>> 西田と申します。
>>
>> 最近、AdLintを使い始めたのですが、
>> 下記のように、比較的大きい多次元配列の定義を含むコードの解析にて、
>> 「failed to allocate memory」が発生し、解析が61%で終了してしまいます。
>>
>> (Sample Code)
>> --------------------------------------------
>> unsigned char TestStructure[200][200][200];
>>
>> int main(int argc, char *argv[])
>> {
>> return 0;
>> }
>> --------------------------------------------
>>
>> 解析中、topコマンドでメモリ使用率を確認すると、
>> 明らかに上昇していく様子が見られ、100%に達すると上記エラーが出ます。
>> (なお、検討PCの搭載メモリは2GBです)
>>
>> 検討環境は以下の通りです。
>>
>> OS : Ubuntu 10.10
>> AdLint Version : 3.0.10 (2013-06-28)
>> Ruby Version : ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux]
>>
>> 仕様上の制限や、必要な設定などありましたらご教示いただけますでしょうか。
>> 宜しくお願いいたします。
>
>------------------------------------------------------------------------------
>Get 100% visibility into Java/.NET code with AppDynamics Lite!
>It's a free troubleshooting tool designed for production.
>Get down to code-level detail for bottlenecks, with <2% overhead.
>Download for free and get started troubleshooting in minutes.
>http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
>_______________________________________________
>adlint-user-ja mailing list
>adl...@li...
>https://lists.sourceforge.net/lists/listinfo/adlint-user-ja
>
|