Skip to content

Commit cdbe40a

Browse files
committed
Website - Eliminate column in example table and fix code expansion block
Optimize vertical space by linking example source code to Example name and deleting column. Fix bug in expanding code snippet on desktop
1 parent 4b41dbe commit cdbe40a

3 files changed

Lines changed: 24 additions & 53 deletions

File tree

docs/landing/examples.html

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
border-bottom: 2px solid var(--border, rgba(255,255,255,0.12));
1212
}
1313
.examples-table th {
14-
padding: 0.6rem 1rem;
14+
padding: 0.4rem 0.85rem;
1515
text-align: left;
1616
font-size: 0.75rem;
1717
font-weight: 600;
@@ -21,7 +21,7 @@
2121
white-space: nowrap;
2222
}
2323
.examples-table td {
24-
padding: 0.75rem 1rem;
24+
padding: 0.45rem 0.85rem;
2525
vertical-align: top;
2626
border-bottom: 1px solid var(--border, rgba(255,255,255,0.07));
2727
}
@@ -73,57 +73,48 @@ <h2 class="section-title">Examples</h2>
7373
<th>Example</th>
7474
<th>Type</th>
7575
<th>Description</th>
76-
<th>Source</th>
7776
</tr>
7877
</thead>
7978
<tbody>
8079
<tr>
81-
<td class="ex-name">Raw TX/RX GPUDirect</td>
80+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_gpudirect_bench.cpp" target="_blank">Raw TX/RX GPUDirect</a></td>
8281
<td><span class="ex-badge ex-badge-cpp">C++</span></td>
8382
<td class="ex-desc-cell">The recommended starting point. Sends and receives packets with payloads landing directly in GPU memory, with no CPU in the data path. Use this to validate your hardware setup and measure baseline throughput.</td>
84-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_gpudirect_bench.cpp" target="_blank">raw_gpudirect_bench.cpp ↗</a></td>
8583
</tr>
8684
<tr>
87-
<td class="ex-name">Header-Data Split TX/RX</td>
85+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_hds_bench.cpp" target="_blank">Header-Data Split TX/RX</a></td>
8886
<td><span class="ex-badge ex-badge-cpp">C++</span></td>
8987
<td class="ex-desc-cell">Splits each incoming packet into two segments: headers land in CPU memory for inspection, while the payload goes directly to the GPU. Useful when your application needs to read per-packet metadata without touching the payload on the CPU.</td>
90-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_hds_bench.cpp" target="_blank">raw_hds_bench.cpp ↗</a></td>
9188
</tr>
9289
<tr>
93-
<td class="ex-name">Sequence Reorder</td>
90+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_reorder_seq_bench.cpp" target="_blank">Sequence Reorder</a></td>
9491
<td><span class="ex-badge ex-badge-cuda">C++/CUDA</span></td>
9592
<td class="ex-desc-cell">Reassembles out-of-order UDP packets into a correctly ordered GPU buffer. A CUDA kernel reads the sequence number embedded in each packet header and places the packet at the right position, so downstream compute always sees a clean, ordered stream.</td>
96-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_reorder_seq_bench.cpp" target="_blank">raw_reorder_seq_bench.cpp ↗</a></td>
9793
</tr>
9894
<tr>
99-
<td class="ex-name">Sequence Reorder + Quantize</td>
95+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_reorder_quantize_bench.cpp" target="_blank">Sequence Reorder + Quantize</a></td>
10096
<td><span class="ex-badge ex-badge-cuda">C++/CUDA</span></td>
10197
<td class="ex-desc-cell">Extends sequence reorder with an in-kernel type conversion step (e.g., int4 → fp32), so the GPU buffer is both reordered and in the format your compute pipeline expects — all before your application code runs.</td>
102-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/raw_reorder_quantize_bench.cpp" target="_blank">raw_reorder_quantize_bench.cpp ↗</a></td>
10398
</tr>
10499
<tr>
105-
<td class="ex-name">PCAP Writer</td>
100+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/pcap_writer_example.cpp" target="_blank">PCAP Writer</a></td>
106101
<td><span class="ex-badge ex-badge-cpp">C++</span></td>
107102
<td class="ex-desc-cell">Captures live network traffic to a standard <code>.pcap</code> file you can open in Wireshark or tcpdump. Packets are received via GPUDirect and staged through pinned host memory to disk; capture continues until you press Ctrl+C.</td>
108-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/pcap_writer_example.cpp" target="_blank">pcap_writer_example.cpp ↗</a></td>
109103
</tr>
110104
<tr>
111-
<td class="ex-name">RDMA Benchmark</td>
105+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/rdma_bench.cpp" target="_blank">RDMA Benchmark</a></td>
112106
<td><span class="ex-badge ex-badge-cpp">C++</span></td>
113107
<td class="ex-desc-cell">Measures RoCE/RDMA throughput in client/server mode. Useful for comparing DAQIRI against standard tools like <code>ib_send_bw</code>, or when one endpoint is a third-party RDMA device such as an FPGA or instrument.</td>
114-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/rdma_bench.cpp" target="_blank">rdma_bench.cpp ↗</a></td>
115108
</tr>
116109
<tr>
117-
<td class="ex-name">Socket Benchmark</td>
110+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/socket_bench.cpp" target="_blank">Socket Benchmark</a></td>
118111
<td><span class="ex-badge ex-badge-cpp">C++</span></td>
119112
<td class="ex-desc-cell">Measures TCP and UDP throughput over standard Linux sockets — no ConnectX NIC or special privileges required. A good comparison baseline before moving to kernel-bypass, or for connecting to a peer that only speaks standard sockets.</td>
120-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/socket_bench.cpp" target="_blank">socket_bench.cpp ↗</a></td>
121113
</tr>
122114
<tr>
123-
<td class="ex-name">GPUDirect Storage Write</td>
115+
<td class="ex-name"><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/gds_write_example.cpp" target="_blank">GPUDirect Storage Write</a></td>
124116
<td><span class="ex-badge ex-badge-cuda">C++/CUDA</span></td>
125117
<td class="ex-desc-cell">Captures a burst of packets and writes them from GPU memory directly to NVMe storage via cuFile, in either raw binary or PCAP format. Supports both synchronous and asynchronous writes, demonstrating the full GPU-to-storage path without any CPU copy.</td>
126-
<td><a class="ex-code-link" href="https://github.com/NVIDIA/daqiri/blob/main/examples/gds_write_example.cpp" target="_blank">gds_write_example.cpp ↗</a></td>
127118
</tr>
128119
</tbody>
129120
</table>

docs/landing/quickstart.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ <h4>Run a Benchmark</h4>
8787
burst);
8888
}</pre>
8989
</details>
90-
<details class="gs-code-block gs-code-details">
90+
<details class="gs-code-block gs-code-details" open>
9191
<summary class="gs-code-hdr"><span class="gs-code-title">Header-Data Split (GPU payload)</span><span class="gs-code-lang">C++</span></summary>
9292
<pre><span class="cm">// Seg 0 = headers (CPU)
9393
// Seg 1 = payload (GPU)</span>

docs/stylesheets/landing.css

Lines changed: 13 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -848,27 +848,28 @@ body.graphic-overlay-open {
848848
min-width: 0;
849849
}
850850

851-
/* details element resets so it looks identical to a div on desktop */
851+
/* details element resets */
852852
.daqiri-landing .gs-code-details {
853853
list-style: none;
854854
}
855855
.daqiri-landing .gs-code-details summary {
856-
cursor: default;
856+
cursor: pointer;
857857
list-style: none;
858858
}
859859
.daqiri-landing .gs-code-details summary::-webkit-details-marker {
860860
display: none;
861861
}
862862

863-
/* Force both panels always open and non-interactive on desktop.
864-
Overrides browser UA display:none on closed <details> children. */
865-
@media (min-width: 481px) {
866-
.daqiri-landing .gs-code-details > *:not(summary) {
867-
display: block;
868-
}
869-
.daqiri-landing .gs-code-details summary {
870-
pointer-events: none;
871-
}
863+
/* Expand/collapse chevron on all screen sizes */
864+
.daqiri-landing .gs-code-details .gs-code-hdr::after {
865+
content: "▲";
866+
font-size: 0.65rem;
867+
color: var(--text-dim);
868+
margin-left: 0.5rem;
869+
flex-shrink: 0;
870+
}
871+
.daqiri-landing .gs-code-details:not([open]) .gs-code-hdr::after {
872+
content: "▼";
872873
}
873874

874875
.daqiri-landing .gs-code-hdr {
@@ -1650,15 +1651,8 @@ body.graphic-overlay-open {
16501651
grid-column: 1 / -1;
16511652
grid-row: 2;
16521653
padding: 0.7rem 1rem;
1653-
border-bottom: 1px solid var(--border);
16541654
font-size: 0.8rem;
16551655
}
1656-
/* Card footer: source link */
1657-
.examples-table td:nth-child(4) {
1658-
grid-column: 1 / -1;
1659-
grid-row: 3;
1660-
padding: 0.6rem 1rem;
1661-
}
16621656
.ex-name {
16631657
white-space: normal;
16641658
font-size: 0.875rem;
@@ -1717,21 +1711,7 @@ body.graphic-overlay-open {
17171711
padding: 1.1rem 0;
17181712
}
17191713

1720-
/* Option B: make details/summary interactive on mobile */
1721-
.daqiri-landing .gs-code-details summary {
1722-
cursor: pointer;
1723-
}
1724-
.daqiri-landing .gs-code-details .gs-code-hdr::after {
1725-
content: "▲";
1726-
font-size: 0.65rem;
1727-
color: var(--text-dim);
1728-
margin-left: 0.5rem;
1729-
flex-shrink: 0;
1730-
transition: transform 0.2s ease;
1731-
}
1732-
.daqiri-landing .gs-code-details:not([open]) .gs-code-hdr::after {
1733-
content: "▼";
1734-
}
1714+
/* Quick-start steps: tighten */
17351715

17361716
/* Option A: smaller font + tighter padding on all pre blocks */
17371717
.daqiri-landing pre,

0 commit comments

Comments
 (0)