問題タブ [prefetch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
209 参照

nhibernate - 1対多のシナリオでのNhibernateインテリジェントプリフェッチ

流暢なマッピングでNHibernate3.2を使用しています。以下は、高度にスケーラブルなパフォーマンスに敏感なシステムでの単純な1対多のマッピングです。

ほとんどすべての場合、これをリポジトリからロードすると、CurrentChildIDで定義されたCurrent Childにのみ関心があり、データベースからの1回のヒットで、ルートとともにこれを読み取りますが、他のChildレコードは読み取りません。その後、残りの子に関心がある場合は、LastChildIDとCurrentChildIDの間のレコードをロードするだけで済みます。これは、ルートに数百の子があり、LastChildIDが処理されるアーカイブ/データウェアハウスのマークが付けられる前のすべてのものがあるためです。別途。

NHibernateでプリフェッチを構成するにはどうすればよいですか。例を見つけることができません。

0 投票する
1 に答える
3022 参照

core-data - コアデータの障害とTo-Many関係のフェッチ

To-Manyリレーションシップで何が発生するか、親エンティティからのリレーションのウォークに依存するタイミング、および新しいフェッチリクエストを作成するタイミングに関連する、CoreDataの動作に関するいくつかの「理論」の質問があります。それらはすべて非常に関連しています。

バックグラウンド

RPBookと多対関係にある親エンティティを想定しRPChapterます。本には多くの章があります。コアデータモデルでもその逆が設定されています。手動で順序付けられた関係の基本的な形式が含まれるため、RPChapterエンティティにはchapterIndexプロパティがあります。私はここでiOS5の新しい順序付けられた関係を使用していません(これらの質問にもそれほど関連していません)。

本の章にたどり着くには、chaptersリレーションシップアクセサーを使用します。

使用法/セットアップ

iPhoneアプリでは、RPBookインスタンスのリストを表示するテーブルビューから始めます。対応するチャプターまだ必要ないため、テーブルビューをサポートするフェッチされた結果コントローラーのフェッチ仕様の一部としてプリフェッチされません。

これらのインスタンスの1つを選択するRPBookと、新しいページが表示され、ビューコントローラにこのインスタンス参照があります。これにはプリフェッチRPBookされていません。chapters

質問1:すぐfilteredSetUsingPredicate:に関係を呼び出すchapters

chapters直接を使用してリレーションを介してフィルタリングしたい場合、私が見ている現在の関連するすべてのインスタンスをfilteredSetUsingPredicate:プリフェッチしなかった場合、それは確実に機能しますか?言い換えれば、その関係にあるすべてのオブジェクトの舞台裏で障害を引き起こして、そのことを実行するのでしょうか、それとも、誤解を招くように、すでにメモリにあるチャプター(存在する場合)に基づいた結果しか得られないのでしょうか?RPChapterRPBookfilteredSetUsingPredicate:

本に関連する章の数が非常に少ない場合は、代わりにallObjects最初に呼び出してスタイルを設定する必要がありますか?すなわち

ただの代わりに:

質問2:すべての本の章のバッチ検索

RPBookインスタンスはあるが、それに関連するプリフェッチされたインスタンスがない場合、リレーションRPChapterを使用して本のすべてのチャプターを一度にフェッチするようにするにはどうすればよいchaptersですか?それを行うのですか[myBook.chapters allObjects]、それともその呼び出しから障害を取り戻すことができますか?

上記の質問1のように、コアデータが、リレーションRPChapterでの使用の動作に影響を与えるかどうかを尋ねられた奇数のフォールトをトリップするのではなく、バッチですべてのフォールトを実行するようにします。filteredSetUsingPredicate:chapters

これを行うには、明示的なフェッチ要求に頼る必要がありますか?すでに持っているものを再フェッチする必要がRPBookありますが、今回はフェッチリクエストで、関連するすべてのチャプターも使用してフェッチするようにリクエストしますsetRelationshipKeyPathsForPrefetching:か?

この最後のオプションは私には無駄に思えます。b/c私はすでに、RPChapter関心のあるすべてのインスタンスのサブセットを概念的に表すスコープ関係を持っています。可能な限り、オブジェクトグラフを歩きたいだけです。

質問3:同じスレッド上のRPChapterインスタンスのNSFetchedResultsController

セットアップ この場合、RPBookインスタンスはありますが、それに関連するプリフェッチされたRPChapterインスタンスはありません(ただし、ストアには存在します)。同じViewControllerで、まったく同じ本にスコープされたインスタンスもありNSFetchedResultsController (FRC)ます。RPChapterつまり、同じスレッド、同じ管理対象オブジェクトコンテキストです。

FRCのインスタンスはRPChapter、メモリ内で、同じオブジェクトを共有する、RPChapter取得したインスタンスの対応物と同じオブジェクトになりますか?言い換えると、ランタイムは、メモリ内の異なる物理オブジェクトを使用して、同じスレッド内の同じMOCからの同じものに対する管理対象オブジェクトの要求を実行しますか?myBook.chaptersObjectIDObjectID

NSFetchedResultsController質問4:リレーションのクエリを提供するために管理対象オブジェクト内にインストールするデザインパターン

chaptersカスタムRPChapter管理対象オブジェクトサブクラスで提供される組み込みの関係を使用して、内容が頻繁に変更される関係(私の例では本の章)に関するクエリを処理できるかどうかを判断しようとしています。設計/アーキテクチャの観点から、インスタンスのを管理対象オブジェクトクラスにインストールしFRCRPChapterそのRPBook本の章に関するクエリを効率的に処理します。

chaptersたとえばアクセサーだけに頼ることができれば明らかにクリーンですがmyBook、to-many関係に大量の宛先エンティティが存在する状況では、ここでのFRCの方が実際にはパフォーマンスと効率が高いようです。

これはやり過ぎですか、それともさまざまな方法でその章についてFRCクエリを実行するためのフェアユースですか?RPBookどういうわけか、オブジェクトグラフを単純に歩く機会を逃しているように感じます。インスタンスをロードするときに、リレーションが常に最新であると信頼できるようにしたいと思います。chaptersRPBook

0 投票する
1 に答える
302 参照

c++ - Windows XP は、C++ での起動時にテキスト ファイルを読み取るのが遅くなります。プリフェッチ?

C++ で記述されたアプリケーション、Visual Studio 2005 を Windows XP でのみ実行しています。アプリケーションが起動されると、XML を含む多数 (> 20000) のテキスト ファイル (.nfo) が読み取られます。各ファイルは 800 バイトです。

コールド リブート後にアプリケーションを起動すると、ファイルの読み取りに 10 分かかります。ただし、それを閉じて再起動すると、それらを読み取るのに 10 秒しかかかりません。ウォーム リブートを実行すると、10 秒かかります。cacheset ユーティリティを使用してキャッシュをクリアすると、ファイルの読み取りにも 10 秒かかります。コンピューターをコールド リブートした場合、コンピューターに 2 時間触れずにアプリケーションを起動しますが、それでも起動に 10 分かかります。

標準ライブラリ (std) の基本関数を使用して、ファイルを開いたり、読み取ったり、閉じたりします。

この問題は、アプリケーションの実装に直接起因するのではなく、Windows XP に起因すると考えられます。

私の現在の焦点は、Windows XP の Prefetcher にあります。私のアプリケーションには、プリフェッチ ディレクトリにある .pf ファイルがあります。ただし、プリフェッチするファイルのリストに .nfo テキスト ファイルがありません。たとえば、Internet Explorer に関連付けられているプリフェッチ ファイルでは、画像などの一時ファイルがプリフェッチ ファイルにリストされていることがわかります。私のファイルをそのリストに強制的に表示できればと思います。Windowsはディスク上のどこにあるかをすでに知っているため、それらのオープン/読み取り操作は高速になります。

ファイルが DLL と共に .pf プリフェッチ ファイルに配置されないのはなぜですか? ファイルがプリフェッチ ファイルに表示される条件は何ですか?

これは理にかなっていますか?

また、Windows XP に完全なディレクトリまたはファイルのリストを強制的にプリフェッチさせる方法があるかどうかも疑問に思っていました。

パソコンと一緒に販売されている商品化済みの商品です。したがって、OS を微調整するための完全なアクセス権があります。ただし、アプリケーションに極端な変更を加える予定はありません。

よろしく

0 投票する
2 に答える
1292 参照

html - Knowing when prefetch is happening in firefox

Is there any way to see when prefetching is happening in Firefox? In Chrome there is an internal task manager which shows when websites is being pre-rendered in background is there anything similar for Firefox pre-fetching?

0 投票する
2 に答える
299 参照

c++ - アプリケーション層のプリフェッチ システムを構築する方法

次のような状況の C/C++ 混合プロジェクトで作業しています。

ファイル内の非常に小さなチャンク (まれに大きなチャンクも) を 1 つずつ処理するには、反復処理が必要です。理想的には、それらを 1 回連続して読むだけです。この場合、必要なときにそれぞれを即座に読み取るのではなく、大きなチャンクをバッファーに読み取って後で消費する方が良い解決策になると思います。

問題は、キャッシュ サイズのバランスを取る方法です。利用できるよく知られたアルゴリズム/ライブラリはありますか?


更新: (タイトルを変更します)

皆さんの返信に感謝します。私たちのボックスでは、さまざまなレベルのキャッシュ メカニズムが機能していることを理解しています。しかし、私の場合はそれだけでは十分ではありません。

ここで重要なことを見逃したと思います。実際、私は既存のフレームワークに基づいてアプリケーションを構築していますが、エンジンに頻繁に読み取りを要求するとコストがかかりすぎます。(はい、エンジンは OS およびディスク レベルのキャッシュを利用していると思います。) そして、私がやろうとしているのは、アプリケーション レベルのプリフェッチ システムを構築することです。

考え?

0 投票する
2 に答える
1934 参照

prefetch - ハードウェア プリフェッチャーを無効にできません

Intel Core i5 2500 でいくつかのメモリ ベンチマークを実行するために、ハードウェア プリフェッチャーを無効にしようとしています。問題は、プリフェッチャーを有効または無効にするオプションが BIOS にまったくないことです。そのため、msr-tools を使用してプリフェッチャーを無効にしようとしています。しかし、msr-tool は必要なレジスタ (0x1a0h) にいくつかの特定の値を書き込むことができません。

これはすべての CPU で同じです。しかし、値 0x850088 (単にテスト用に選択したもの) を書き込もうとすると、その値は正常に書き込まれます。

問題がどこにあり、これに対する解決策は何かを誰でも指摘できますか?

また、BIOS にプリフェッチャーを無効にするオプションがないことも奇妙に感じました。これは、BIOS の特定のバージョンの状況ですか?

ありがとう。

0 投票する
2 に答える
15433 参照

c - x86-64 のキャッシュへのデータのプリフェッチ

私のアプリケーションでは、ある時点でメモリ データの大きな連続ブロック (数百 MB) に対して計算を実行する必要があります。私が考えていたのは、プログラムが将来触れるブロックの部分をプリフェッチし続けて、その部分で計算を実行すると、データが既にキャッシュにあるようにすることでした。

誰かがgccでこれを達成する方法の簡単な例を教えてもらえますか? どこかで読ん_mm_prefetchだのですが、正しい使い方がわかりません。また、マルチコア システムを使用していますが、各コアはメモリの異なる領域で並行して動作することに注意してください。

0 投票する
1 に答える
1176 参照

html - HTML5リンクのプリフェッチはGoogleAnalyticsに影響しますか?

html5リンクプリフェッチ属性により、Google Analyticsのプリフェッチされたページで訪問がカウントされますか?

<link rel="prefetch" href="http://someurl.com/page.htm" />

プリフェッチされたAJAXコンテンツの追跡に関するこのSOの質問は似ていますが、<link>タグはJavascriptを使用しないブラウザー解釈であり、ブラウザーごとに実装されます。

私は論理的な前のページと次のページのコンテンツを含むサイトを開発しています。アプリケーションは、Webサイト、トレーニングコース、またはオンラインパンフレットを順番に閲覧しています。

0 投票する
1 に答える
79 参照

image - 動的な画像の読み込みが原因で、ダイアログ ボックスの位置が正しく計算されませんか?

私はギャラリー タイプのアプリケーションに取り組んでいます。1 つのテンプレートでは、クリックするとサムネイル画像が大きく表示されるポップアップ ダイアログが表示されます。イメージへのサーバー パスは、テンプレート変数として含まれています。

これは、イメージが初めて読み込まれる場合を除いて、非常にうまく機能します。ダイアログが作成されて表示されますが、html 文字列が dom にアタッチされた時点で画像が表示されません。それが引き起こしている問題は、ダイアログの配置にあります。

ダイアログ ボックスは、次のように画面の中央に配置されます。 left = window.width /2 - dialog.width/2

しかし、画像が存在しないため、dialog.width 変数が正しくありません。繰り返しますが、これはサムネイルが最初にクリックされたときにのみ発生します。その後のクリックのために画像がキャッシュされていると思います。

これは、何らかの形で画像をプリフェッチすることで処理されますか? もしそうなら、キャッシュするためにDOMにアタッチする必要がありますか、それとも配列にロードするだけですか?

どうもありがとう !

0 投票する
3 に答える
3616 参照

javascript - Rel PreRender / PreFetch、JSを実行しますか?

プリレンダー/プリフェッチするページにJavascriptがある場合(Google Analytics JSなど)、プリレンダー/プリフェッチはページでJavascriptを実行しますか?または、ページが実際にユーザーによって要求されるまで、JSの実行を遅らせますか?