> > I found the following part in MOSI_SMP_bcast-cache.sm.
> >
> > action(f_issueGETS, "f", desc="Issue GETS.") {
> > DEBUG_EXPR(machineID);
> > enqueue(addressNetwork_out, AddressMsg, latency="ISSUE_LATENCY") {
> > out_msg.Address := address;
> > out_msg.Type := CoherenceRequestType:GETS;
> > out_msg.CacheState := cache_state_to_int(getState(address));
> > out_msg.Requestor := machineID;
> > out_msg.Destination.broadcast(MachineType:L1Cache);
> > out_msg.Destination.add(map_Address_to_Directory(address));
> > out_msg.MessageSize := MessageSizeType:Control;
> > }
> > }
> >
> > Can I only assign a destination address instead of broadcast this message,
> > because I only want one consumer to process this request. Maybe then
> others.
> > How should I do? Can I use out_msg.Destination.add(DestinationMachineID) ?
>
> If your protocol innovation can handle a unicast message instead of a
> broadcast, then Yes, out_msg.Destination.add(DestinationMachineID) is
> correct. The directory protocols do _not_ use broadcast.
>
> --Mike
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
>
Hi Mike,
I need to modify the protocol to handle unicast message instead of
broadcast, but which files should I modify? I hope L1Cache 's AddressMsg can
be handled like direcotry. Which part of code should I read?
Thanks a lot.
|