Query Regarding Custom Tile Sizes in Pluto

31 views
Skip to first unread message

BISWAJEET SRICHANDAN B.TECH

unread,
Jun 11, 2025, 1:15:22 AMJun 11
to Pluto development

Dear Sir,

I attempted to specify custom tile sizes in the tile.sizes file for fdtd-2d.c, first using the values 1, 8, 16, and subsequently 1, 16, 128, with the intention of applying diamond tiling. However, Pluto does not appear to recognize these inputs and continues to use the default tile sizes 16, 32, 32.

Could you please clarify whether Pluto reverts to the default tile sizes in cases where the provided values are deemed invalid?

Thank you for your assistance.

Best regards,
Biswajeet Srichandan


Uday Bondhugula

unread,
Jun 17, 2025, 11:40:41 PMJun 17
to Pluto development
I think you might have placed the 'tile.sizes' in the wrong directory (you didn't specify where you placed it). It has to be in the working dir. I just tried that example and it correctly picked up the tile sizes and also performed diamond tiling (by default). Please also paste the actual content of your 'tile.sizes'. Also, the default tile sizes are 32 for all dims and not 16, 32, 32.

./polycc test/fdtd-2d.c
[pluto] compute_deps (isl)
[pluto] Number of statements: 4
[pluto] Total number of loops: 11
[pluto] Number of deps: 28
[pluto] Maximum domain dimensionality: 3
[pluto] Number of parameters: 3
[pluto] Concurrent start hyperplanes found
[pluto] Affine transformations [<iter coeff's> <param> <const>]

T(S1): (t-j, t+j, t)
loop types (loop, loop, loop)

T(S2): (t-j, t+j, t+i)
loop types (loop, loop, loop)

T(S3): (t-j, t+j, t+i)
loop types (loop, loop, loop)

T(S4): (t-j, t+j+1, t+i+1)
loop types (loop, loop, loop)

[Pluto] After tiling:
T(S1): ((t-j)/1, (t+j)/8, t/16, t-j, t+j, t)
loop types (loop, loop, loop, loop, loop, loop)

T(S2): ((t-j)/1, (t+j)/8, (t+i)/16, t-j, t+j, t+i)
loop types (loop, loop, loop, loop, loop, loop)

T(S3): ((t-j)/1, (t+j)/8, (t+i)/16, t-j, t+j, t+i)
loop types (loop, loop, loop, loop, loop, loop)

T(S4): ((t-j)/1, zT4, zT5, ((t-j+j)/1-(-(t-j+((t-)/1, ((t-j+j)/1+(-(t-j+((t-)/1+1, ((t-j+j)/1+i+1)

...

BISWAJEET SRICHANDAN B.TECH

unread,
Jun 18, 2025, 12:09:41 AMJun 18
to Pluto development
Dear sir,

when I ran this command "./polycc examples/fdtd-2d/fdtd-2d.c -o examples/fdtd-2d/fdtd-2d.tiled.c", I have got the same output as yours along with some more information. Can you please confirm that you have also got a similar output.

[Pluto] After intra_tile reschedule
T(S1): ((t-j)/1, (t+j)/8, t/16, t, t+j, t)

loop types (loop, loop, loop, loop, loop, loop)

T(S2): ((t-j)/1, (t+j)/8, (t+i)/16, t, t+j, t+i)

loop types (loop, loop, loop, loop, loop, loop)

T(S3): ((t-j)/1, (t+j)/8, (t+i)/16, t, t+j, t+i)

loop types (loop, loop, loop, loop, loop, loop)

T(S4): ((t-j)/1, zT4, zT5, ((t-j+j)/1, ((t-j+j)/1+(-(t-j+((t-)/1+1, ((t-j+j)/1+i+1)

loop types (loop, loop, loop, loop, loop, loop)

[Pluto] After intra-tile optimize
T(S1): ((t-j)/1, (t+j)/8, t/16, t, t, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S2): ((t-j)/1, (t+j)/8, (t+i)/16, t, t+i, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S3): ((t-j)/1, (t+j)/8, (t+i)/16, t, t+i, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S4): ((t-j)/1, zT4, zT5, ((t-j+j)/1, ((t-j+j)/1+i+1, ((t-j+j)/1+(-(t-j+((t-)/1+1)

loop types (loop, loop, loop, loop, loop, loop)

[Pluto] After tile scheduling:
T(S1): ((t-j)/1+(t+j)/8, (t+j)/8, t/16, t, t, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S2): ((t-j)/1+(t+j)/8, (t+j)/8, (t+i)/16, t, t+i, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S3): ((t-j)/1+(t+j)/8, (t+j)/8, (t+i)/16, t, t+i, t+j)

loop types (loop, loop, loop, loop, loop, loop)

T(S4): ((t-j)/1+zT4, zT4, zT5, ((t-j+j)/1, ((t-j+j)/1+i+1, ((t-j+j)/1+(-(t-j+((t-)/1+1)

loop types (loop, loop, loop, loop, loop, loop)

[pluto] using statement-wise -fs/-ls options: S1(4,6), S2(4,6), S3(4,6), S4(4,6),
[pluto-unroll-jam] No unroll jam loop candidates found
[Pluto] Output written to examples/fdtd-2d/fdtd-2d.tiled.c

[pluto] Timing statistics
[pluto] SCoP extraction + dependence analysis time: 0.001802s
[pluto] Auto-transformation time: 0.044189s
[pluto] Tile size selection time: 0.000000s
[pluto] Total constraint solving time (LP/MIP/ILP) time: 0.004941s
[pluto] Code generation time: 0.968259s
[pluto] Other/Misc time: 0.380122s
[pluto] Total time: 1.394372s
[pluto] All times: 0.001802 0.044189 0.968259 0.380122

Uday Reddy B

unread,
Jun 18, 2025, 12:10:57 AMJun 18
to BISWAJEET SRICHANDAN B.TECH, Pluto development
Yes, that's the expected output. Please always report the git commit/version you are using.

-Uday

DISCLAIMER: This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system.

Silicon Institute of Technology

--
You received this message because you are subscribed to the Google Groups "Pluto development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pluto-developm...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pluto-development/35eb3201-be92-4c7f-bbd4-12ef862682e2n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages